• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar

Jaranguda

Belajar Mengajar

  • Home
  • Sponsor/Jasa
  • Tentang

Mengambil Data dari Situs BPJS Ketenagakerjaan dengan PHP cURL

Last Updated on 12 February 2019 By tommy 2 Comments

Di tutorial PHP cURL kali ini kita akan mencoba untuk mengambil data Saldo JHT dari situs BPJS Ketenagakerjaan, data yang akan diambil hanya sebatas Saldo JHT, kalo mau lebih silahkan di utak-atik sendiri.

Script Login BPJS Ketenagakerjaan

Buat file baru bernama bpjs.php tambahkan script dibawah ini

  1. <?php
  2. // bpjs.php
  3. $userid = 'USERID'; // userid bpjs anda
  4. $password = 'PASSWORD'; // password bpjs
  5. $url = 'https://es.bpjsketenagakerjaan.go.id/sso/login.bpjs';
  6.  
  7. $ch = curl_init();
  8. curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:36.0) Gecko/20100101 Firefox/36.0");
  9. curl_setopt($ch, CURLOPT_URL, $url );
  10. curl_setopt($ch, CURLOPT_POST, 1);
  11. curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
  12. curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0);
  13. curl_setopt($ch, CURLOPT_POSTFIELDS, 'vc=&userid='.$userid.'&pass='.$password.'&submit=');
  14. curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookies');
  15. curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookies');
  16. $hasil = curl_exec($ch);
  17. echo "< pre>";
  18. print_r($hasil);	
  19. echo "</ pre>";

Coba akses di browser, bila anda diarahkan ke https://es.bpjsketenagakerjaan.go.id/sso/login.bpjs?error=Silahkan%20Login%20ulang maka scriptnya sudah benar arahnya
layanan saldo bpjs

kalo enaknya sih pake PHP CLI biar ngga otomatis di-redirect
php cli

Biar ngga perlu susah-susah pindah ke PHP CLI, kita modifikasi script diatas, agar menampilkan script diatas di browser, hapus baris 17-19 ganti dengan

  1. $pecah = explode("<script>window.location='https://es.bpjsketenagakerjaan.go.id/sso/dashboard.bpjs';</script>", $hasil);
  2. if ($pecah) { 
  3. 	echo "< pre>";
  4. 	print_r(htmlentities($hasil));	
  5. 	echo "</ pre>";
  6. }
  7. else {
  8. 	echo "Gagal Login";
  9. }

Buka lagi di browser
sukses login

URL https://es.bpjsketenagakerjaan.go.id/sso/dashboard.bpjs hasil output dari script diatas tandanya kita sudah berhasil login ke sistem. Tinggal pengolahan data

KPJ dan NOHP

KPJ dan nomer HP harus diambil terlebih dahulu baru bisa kita masuk ke proses pengambilan Saldo JHT, karena data ini yang akan di kirim agar bisa mendapatkan Saldo yang kita inginkan.
Ubah script baris 16-25 diatas, ganti menjadi

  1. curl_setopt($ch, CURLOPT_URL, 'https://es.bpjsketenagakerjaan.go.id/sso/profil.bpjs');
  2. curl_setopt($ch, CURLOPT_REFERER, 'https://es.bpjsketenagakerjaan.go.id/sso/dashboard.bpjs');
  3. $hasil = curl_exec($ch);
  4. $pecah_kpj = explode('<td width="48%">', $hasil);
  5. print_r($pecah_kpj);

sekarang buka lagi di browser tampilannya menjadi
data profile

klik di tab LAYANAN atau biar mudahnya view source web tersebut
data kpj no hp
sukses :) data yang kita butuhkan ada di array 11 dan 12. Ubah baris no 20 di atas menjadi

  1. $string = preg_replace('/\s+/','',$pecah_kpj[11]);
  2. $string2 = preg_replace('/\s+/','',$pecah_kpj[12]);
  3. $KPJ = strstr($pecah_kpj[11], '</td>', true);
  4. $NOHP = strstr($pecah_kpj[12], '</td>', true);
  5. $string = preg_replace('/\s+/','',$KPJ);
  6. $string2 = preg_replace('/\s+/','',$NOHP);
  7. echo "< pre>";
  8. echo $string.':'.$string2;
  9. echo "< /pre>";

*nb : penamaan variabel diatas emang aneh :P asalan aja biar cepet jadi
Buka lagi browser dan hasilnya

13000000:628200000000

no KPJ dan no HP dipisahkan oleh tanda :.

Saldo JHT BPJS Ketenagakerjaan

Langkah terakhir adalah mengambil data saldo JHT, link yang perlu kita akses adalah https://es.bpjsketenagakerjaan.go.id/sso/act/ceksaldo.bpjs, tau adri mana? login aja ke situs BPJS langsung lalu cek URL-nya manual ;)
Dibawah script diatas tambahkan

  1. curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookies');
  2. curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookies');
  3. curl_setopt($ch, CURLOPT_RETURNTRANSFER, FALSE);
  4. curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
  5. curl_setopt($ch, CURLOPT_POSTFIELDS, 'dataKpj='.$string.'&msisdnaktif=1&msisdn='.$string2);
  6. curl_setopt($ch, CURLOPT_URL, 'https://es.bpjsketenagakerjaan.go.id/sso/act/ceksaldo.bpjs');
  7. curl_setopt($ch, CURLOPT_REFERER, 'https://es.bpjsketenagakerjaan.go.id/sso/ceksaldo.bpjs');
  8. $hasil = curl_exec($ch);
  9. echo "<pre>";
  10. print_r($hasil);
  11. echo "</ pre>";

Buka di browser dan datanya dapat ;)
hasil saldo jht anda

Demo Online : labs.jaranguda.com

Last Updated on 12 February 2019 by tommy

Tulisan menarik lainnya

  • Mengambil Data Klasemen Terbaru Liga Indonesia dengan PHP CURL

    Data yang akan kita ambil bersumber dari situs ligaindonesia.co.id, situs resmi Liga Indonesia. Disini kita…

  • Mengambil data Kurs dari Situs BRI

    Situs Bank Rakyat Indonesia baru saja mengupdate tampilan web dan struktur tabel kurs nya, sehingga…

  • Mengambil Data Dari Icecast dengan PHP cURL

    Sebelumnya sudah ada tutorial membuat server icecast di Membuat Streaming Radio Online dengan Icecast Debian…

  • Mengambil Data Cuaca dari Situs BMKG dengan PHP CURL

    Update : 20 November 2014 script dibawah ini sudah bisa dijalankan kembali. Bila anda mau…

Filed Under: PHP Tagged With: BPJS, Saldo

Reader Interactions

Comments

  1. kiki anarki says

    22 December 2022 at 23:51

    lebih jelas lagi kak link nya

    Reply
  2. fiqar tamin says

    19 October 2017 at 09:53

    mas link downloadny mati :((

    Reply

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Primary Sidebar

Pencarian

Tanya Jawab tentang DevOps SRE CPE, gabung di https://t.me/devopsindonesia

Terbaru

  • Cara Mengganti Port Screen Sharing macOS
  • Cara Menonaktifkan Pager di macOS
  • Cara Mengupdate Nama Apple silicon-as-a-Service Scaleway
  • Cara Force Delete Namespace di Kubernetes
  • Install PHP MariaDB di Mac Monterey

Komentar

  • mazda on Tutorial Lengkap Install Mail Server Postfix Dovecot MariaDB di CentOS 7
  • adi on Menggunakan Mikrotik Sebagai SSH Client
  • aris u on Solusi Simple Queue Mikrotik Tidak Berjalan
  • Bowo on Cara Mematikan SSID Molecool Balifiber
  • aris on Solusi Simple Queue Mikrotik Tidak Berjalan

Tulisan Populer

  • Password Router Huawei HG8245H5 Indihome 1.2m views
  • Password Terbaru ZTE F609 Indihome 784.5k views
  • Password Superadmin Huawei HG8245A 318.7k views
  • Cara Setting Manual Modem GPON ZTE F609 Indihome 273.1k views
  • Cara Setting Wireless ZTE F609 Indihome 257.2k views
  • Mengaktifkan Port LAN di Huawei HG8245 Indihome 169.9k views
  • Akses UseeTV Indihome via Wireless ZTE F609 156.8k views
  • Kemana Menghilangnya Saldo BCA 50 ribu 153.4k views
  • Cara Reset Password ZTE F609 Indihome 147.6k views
  • Cara Setting DHCP Server Modem/Router ZTE F609 113.6k views

Kategori

  • Delphi
  • dll
  • Gambas
  • Internet
  • Java
  • Lazarus
  • Linux
  • PHP
  • Review
  • Teknologi

Sponsor

kadal.id
carakami.com
kuotabisa.com
Untuk jadi sponsor, hubungi kita lewat halaman sponsor
© 2021. Jaranguda
  • Linux
  • PHP
  • Internet
  • Teknologi
  • Delphi
  • Gambas
  • Java