UNPKG

orkuthidebot

Version:

Library Orkut Hide Bot: fungsi QRIS, OTP, dan mutasi transaksi

66 lines (57 loc) 2.13 kB
const axios = require('axios'); const base64 = require('base-64'); async function cekStatusPembayaran(auth_username, auth_token, merchant, nominal) { const redirectUrl = "https://app.orderkuota.com/digital_app/qris"; const encodedRedirect = base64.encode(redirectUrl); // 🔐 Autologin untuk dapatkan cookie const loginResponse = await axios.get("https://app.orderkuota.com/api/v2/autologin", { params: { auth_username, auth_token, redirect: encodedRedirect }, headers: { 'User-Agent': "WebView", 'x-requested-with': "com.orderkuota.app" }, maxRedirects: 0, validateStatus: status => status === 302 }); const rawSetCookie = loginResponse.headers['set-cookie']?.join(', ') || ''; const cookieChunks = [...rawSetCookie.matchAll(/\b[\w_]+=.*?(?=,\s\w+=|$)/g)]; const cookieHeader = cookieChunks.map(m => m[0]).join('; '); // 🔗 Ambil referer dari /digital_app/qris const qrisResponse = await axios.get("https://app.orderkuota.com/digital_app/qris", { params: { auth_username, auth_token, redirect: encodedRedirect }, headers: { 'User-Agent': "WebView", 'x-requested-with': "com.orderkuota.app", 'Cookie': cookieHeader }, maxRedirects: 0, validateStatus: status => status === 302 }); const refererUrl = qrisResponse.headers['location']; // 📲 Cek status pembayaran QRIS const timestamp = Date.now().toString(); const statusResponse = await axios.get("https://kasir.orderkuota.com/qris/curl/status_pembayaran.php", { params: { timestamp, merchant, nominal }, headers: { 'User-Agent': "WebView", 'Accept': "application/json", 'content-type': "application/json", 'x-requested-with': "com.orderkuota.app", 'referer': refererUrl } }); return statusResponse.data; } module.exports = { cekStatusPembayaran };