const { default: makeWASocket, useSingleFileAuthState } = require("@whiskeysockets/baileys"); const { createInvoice } = require("./duitku"); const fs = require('fs'); const qrcode = require("qrcode-terminal"); const { state, saveState } = useSingleFileAuthState('./auth.json'); const sock = makeWASocket({ auth: state, printQRInTerminal: true, }); sock.ev.on('creds.update', saveState); sock.ev.on('messages.upsert', async ({ messages }) => { const msg = messages[0]; if (!msg.message) return; const text = msg.message.conversation || msg.message.extendedTextMessage?.text; if (text?.startsWith("listproduk")) { const daftar = `šŸ“¦ List Produk:\n1. netflix 1u1b - 15000\nKetik: buyproduk netflix 1u1b`; await sock.sendMessage(msg.key.remoteJid, { text: daftar }); } if (text?.startsWith("buyproduk")) { const [, ...args] = text.split(" "); const productName = args.join(" "); const orderId = "INV" + Date.now(); const amount = 15000; // contoh harga tetap const invoice = await createInvoice(orderId, productName, amount); const reply = `āœ… Order: ${productName}\nšŸ’° Total: Rp${amount.toLocaleString()}\n\nScan QR ini:\n${invoice.paymentUrl}`; await sock.sendMessage(msg.key.remoteJid, { text: reply }); } });