Settings -> Access keys Config::$serverKey = $serverKeyApi; // non-relevant function only used for demo/example purpose printExampleWarningMessage(); // $order_id = $_GET['id']; Config::$isProduction = true; Config::$isSanitized = true; Config::$is3ds = true; // $orderId = '645977615'; // Get transaction status to Midtrans API $status = ''; try { $status = Transaction::status($order_id); } catch (\Exception $e) { echo $e->getMessage(); die(); } $transaction = $status->transaction_status; function printExampleWarningMessage() { if (strpos(Config::$serverKey, 'your ') != false ) { echo ""; echo "

Please set your server key from sandbox

"; echo "In file: " . __FILE__; echo "
"; echo "
"; echo htmlspecialchars('Config::$serverKey = \'\';'); die(); } } // Sertakan file konfigurasi database include '../config/connect.php'; // Query untuk mengambil data dari tabel apk_payment dan data_server $stmt = $pdo->prepare("SELECT apk_payment.id,apk_payment.status,apk_payment.expaired_time,apk_payment.nominal, apk_payment.keterangan, data_server.nama_pemilik, data_server.nama_server, data_server.username, data_server.nomor_whatsapp FROM apk_payment LEFT JOIN data_server ON apk_payment.id_data_server = data_server.id WHERE apk_payment.order_id = :order_id"); $stmt->bindParam(':order_id', $order_id); $stmt->execute(); // Ambil satu baris data hasil query $result = $stmt->fetch(); // Ambil data dari hasil query $amount = $result['nominal']; $name = $result['keterangan']; $first_name = $result['nama_pemilik']; $last_name = '('.$result['nama_server'].')'; $email = $result['username'].'@mail.com'; // Mengganti $mail.com dengan @mail.com $phone = $result['nomor_whatsapp']; session_start(); ?> BilsPro

Detail Pembayaran
Nama Usaha
Nama Pemilik
Telepon
Keterangan
Expaired Date

Status Pembayaran


Total


transaction_status == 'pending') { if ($status->payment_type == 'bank_transfer') { $va = $status->va_numbers; echo "Virtual Account ".strtoupper($va[0]->bank); echo "

".$va[0]->va_number."

"; echo "
"; echo "Copy virtual account di atas untuk melakukan pembayaran"; } else { try { $cancel = Transaction::cancel($order_id); } catch (\Exception $e) { echo $e->getMessage(); die(); } function generateOrderId($pdo) { do { $order_id = sprintf('%013d', mt_rand(0, 9999999999999)); // Generate 13 digit number $stmt = $pdo->prepare("SELECT COUNT(*) FROM apk_payment WHERE order_id = :order_id"); $stmt->bindParam(':order_id', $order_id); $stmt->execute(); $exists = $stmt->fetchColumn(); } while ($exists > 0); return $order_id; } $order_id = generateOrderId($pdo); $stmt = $pdo->prepare("UPDATE apk_payment SET status = 'BELUM DIBAYAR', order_id = '$order_id' WHERE id = :id"); $stmt->bindParam(':id', $result['id']); $stmt->execute(); header('Location: ../index.php?c2V0dGluZ19wcm9maWxl'); exit(); } } elseif ($status->transaction_status == 'settlement') { echo ''; echo "

Pembayaran Berhasil

"; } ?>