LoERbTcWHiQxdmcpf4fiSjgWN9qHi76MAUgOelk0

Transaksi Tidak Auto Gagal Saat Gagal Terhubung ke Jabber / IP / API


Terkadang terdapat gangguan pada jalur transaksi, misalkan server jabber API down, center IP suplier down, jalur API down dan sebagainya. Jika terjadi gangguan tersebut biasanya transaksi akan langsung gagal atau refund. Untuk menghindari kemungkinan transaksi gagal / refund padahal sukses di suplier karena ada gangguan di jalur transaksi, silakan ikuti panduan berikut ini.

1. Masuk ke dalam panel hosting kamu (cPanel / Direct Admin / Webuzo / Cyber Panel / dll) kemudian masuk ke menu File Manager. Buka public_html > application > models kemudian cari file dengan nama Mtrx.php lalu edit file tersebut.
Edit file Mtrx.php.

2. Cari script berikut di dalam file Mtrx.php:
public function set_gagal($trx, $reply_message)

3. Terdapat tanda { dibawah script di atas, tambahkan script berikut dibawah tanda { tersebut:
//Script agar tidak RF - Start
        $string = $this->db->where('in_trx_id', $trx->tr_id)->get('sms_masuk')->row()->in_message;

        if(strtolower(trim($string)) == 'gagal mengirim pesan' || strtolower(trim($string)) == 'otorisasi gagal' || strtolower(trim($string)) == 'Tidak dapat terhubung' || strtolower(trim($string)) == 'CURL Error' || strtolower(trim($string)) == 'Terjadi kesalahan' || strtolower(trim($string)) == 'Koneksi gagal'){

            $this->db->where('tr_id', $trx->tr_id);
            $this->db->set('tr_status', '-');
            $this->db->set('tr_retry', '1');
            $this->db->update('transaksi');
            exit();
            }      
//Script agar tidak RF - End
Tambahkan script.
Jika script diatas tidak work, coba pakai script yang ini:
//Script agar tidak RF - Start
        $string = $this->db->where('in_trx_id', $trx->tr_id)->get('sms_masuk')->row()->in_message;
        if(strpos(strtolower(trim($reply_message)), 'tidak dapat terhubung') !== false ||
           strpos(strtolower(trim($reply_message)), 'gagal mengirim pesan') !== false ||
           strpos(strtolower(trim($reply_message)), 'otorisasi gagal') !== false ||
           strpos(strtolower(trim($reply_message)), 'Tidak dapat terhubung') !== false ||
           strpos(strtolower(trim($reply_message)), 'CURL Error') !== false ||
           strpos(strtolower(trim($reply_message)), 'Terjadi kesalahan') !== false ||
           strpos(strtolower(trim($reply_message)), 'Koneksi gagal') !== false){
            $opsitrx = $trx->tr_opsi ? json_decode($trx->tr_opsi, true) : array(); 
            $opsitrx['server_message'] = $reply_message;

            $this->db->where('tr_id', $trx->tr_id); 
            $this->db->set('tr_status', '-');
            $this->db->set('tr_retry', '1');
            $this->db->set('tr_opsi', json_encode($opsitrx));
            $this->db->update('transaksi');
            exit(0);
            }
//Script agar tidak RF - End
4. Ubah tulisan berwarna merah sesuai dengan pesan yang muncul ketika jalur transaksi gangguan. Pesannya bisa kamu lihat di menu notifikasi pada akun admin atau lihat di detail transaksi ketika jalur transaksi tersebut sedang gangguan. Jika sudah, jangan lupa simpan.
Contoh notifikasi jalur transaksi gangguan.
Intinya panduan ini membuat transaksi menjadi IP (dalam proses) jika jalur transaksi gangguan. Namun sepertinya tidak work untuk jalur H2H IP official.
Sekian panduan membuat Transaksi Tidak Auto Gagal Saat Gagal Terhubung ke Jabber / IP / API. Semoga bisa bermanfaat untuk kita semua. Untuk kembali ke halaman Tutorial dan Panduan silakan klik disini.
M Faishal Hidayat
M Faishal Hidayat, lahir di Cianjur tapi besar di Bogor. Kuliah manajemen dan ekonomi tapi sangat tertarik dengan dunia teknologi khususnya segala sesuatu yang berhubungan dengan website.
SHARE

Related Posts

Subscribe to get free updates

Post a Comment