admin@medantechno.com
0852 0 7117 555
medantechno.com
Loading...... Refresh
Loading Slide Show...
14 Oktober 2016

Tutorial CURL Mutasi Mandiri Internet Banking

Pada artikel kali ini yang berjudul Tutorial Grab Mutasi Mandiri Internet Banking, kita akan membuat barisan code CURL untuk melakukan request ke url Internet Banking Mandiri dan mengambil mutasi.


Step pertama yang kita buat adalah fungsi CURL seperti contoh dibawah:


function httpsCurl($url,$urlref=false,$fields=false) {
    global $fcookie, $agent;
    $ch = curl_init();
    curl_setopt($ch,CURLOPT_URL,$url);
    if($urlref) {
        curl_setopt($ch, CURLOPT_REFERER, $urlref);
    }
    if($fields) {
        $fields_string = '';
        foreach($fields as $key=>$value) { 
            $fields_string .= $key.'='.$value.'&'; 
        }
        curl_setopt($ch,CURLOPT_POSTFIELDS,$fields_string);
        curl_setopt($ch,CURLOPT_POST,count($fields));    
    } else {
        curl_setopt($ch,CURLOPT_HTTPGET, TRUE);
    }
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER,TRUE);
    curl_setopt($ch, CURLOPT_COOKIEJAR, $fcookie);
    curl_setopt($ch, CURLOPT_COOKIEFILE, $fcookie);
    curl_setopt($ch, CURLOPT_USERAGENT, $agent);
    $html = curl_exec($ch);
    return $html;
}

 

 

Penting !!! untuk mencoba melakukan grab ibanking, jangan pernah melakukan login, sebelum logout. Jika kondisi itu terjadi selama 3 kali, maka acount ibank kita akan terblokir.

Kemudian kita buat CURL untuk Logout:

 $urllogout        = 'https://ib.bankmandiri.co.id/retail/Logout.do?action=result';
$resultlogout    = httpsCurl($urllogout);
file_put_contents('./resultlogin.html',$urllogout);

kita menggunakan file fungsi file_put_contents agar bisa kita telusuri langkah data yang sudah kita dapatkan.

Kemudian untuk Login :

 $url1        = 'https://ib.bankmandiri.co.id/retail/Login.do?action=form&lang=in_ID';
$result1    = httpsCurl($url1,$urllogout);
file_put_contents('./result1.html',$result1);

Selanjutnya  Melengkapi field formnya:

 $fields = array(
        'action'=>urlencode("result")
        , 'password'=>urlencode($password)
        , 'userID'=>urlencode($userID)
        , 'image.x'=>urlencode("0")
        , 'image.y'=>urlencode("0")
    );
    $url2        = 'https://ib.bankmandiri.co.id/retail/Login.do';
    $result2    = httpsCurl($url2,$url1,$fields);

Setelah sukses login, sekarang mencoba untuk membaca kode acount:

 $url3        = 'https://ib.bankmandiri.co.id/retail/TrxHistoryInq.do?action=form';
    $result3    = httpsCurl($url3,$url2);
    file_put_contents('./result3.html',$result3);
    sleep(2);
    $accID = strpos($result3,'name="fromAccountID"');
    if( $accID  && ($accID=strpos($result3,' value="',++$accID)) && ($accID=strpos($result3,' value="',++$accID)) ) {
        $accID = substr($result3,$accID+8,15);
        $accID = rtrim($accID, '"> ');
        //echo $accID;
    }

Setelah code acount kita dapatkan, kita mulai mengambil mutasi satu bulan:

$max_day = getMaxDay($year,$month);
    $fields = array(
        'action'=>urlencode("result")
        , 'fromAccountID'=>urlencode($accID)
        , 'fromDay'=>urlencode("1")
        , 'fromMonth'=>urlencode($month)
        , 'fromYear'=>urlencode($year)
        , 'orderBy'=>urlencode("ASC")
        , 'searchType'=>urlencode("R")
        , 'sortType'=>urlencode("Date")
        , 'toDay'=>urlencode($max_day)
        , 'toMonth'=>urlencode($month)
        , 'toYear'=>urlencode($year)
    );
    $url4        = 'https://ib.bankmandiri.co.id/retail/TrxHistoryInq.do';
    $result4    = httpsCurl($url4,$url3,$fields);
    file_put_contents('./result4.html',$result4);
    sleep(2);

    // LOGOUT //
    $resultx    = httpsCurl($url0);

Untuk hasil terletak di result4.html

 

UPDATE:

Demo Mandiri : https://tools.medantechno.com/mandiri/

Demo BCA : https://tools.medantechno.com/bca/

Semoga bermanfaat...




Artikel Lainnya


Portofolio

  • Agenda
  • Date Title
    15 Februari 2017 Parking Gate Job
    13 September 2016 Finishing pay-inm.co.id
    14 September 2016 Finishing Company Profil Masjid Al-iklas Medan


Share...

  • Partner