Top Up Valorant Points

Proses manual, cepat, dan terpercaya.

Valorant

Valorant

⚡️ Proses Cepat

🥷🏼 Buka 24 Jam Setiap Hari

1. Masukkan Data Akun

2. Pilih Nominal

420 Points
Rp 48.000
900 Points
Rp 96.000
1375 Points
Rp 140.000
2400 Points
Rp 250.000

3. Pilih Pembayaran

E-Wallet & QRIS

QRIS QRIS
DANA DANA
GoPay GoPay
ShopeePay ShopeePay

4. Masukkan Kode Promo (Opsional)

5. Masukkan Informasi Kontak

const product = selectedOption.dataset.product; selectedPriceInput.value = price; selectedProductInput.value = product; summaryPriceDisplay.textContent = `Rp ${parseInt(price).toLocaleString('id-ID')}`; summarySection.style.display = 'block'; // Reset promo jika ganti nominal discountApplied = false; promoCodeInput.value = ''; qrisModal.style.display = 'none'; }); proceedBtn.addEventListener('click', function() { const riotId = document.getElementById('riotId').value; const product = selectedProductInput.value; let price = parseInt(selectedPriceInput.value); let finalPrice = price; const confDiscountRow = document.getElementById('confDiscountRow'); const confDiscount = document.getElementById('confDiscount'); if (discountApplied) { const discountAmount = price * 0.02; finalPrice = price - discountAmount; } if (!riotId) { notificationMessage.textContent = 'Harap isi Riot ID terlebih dahulu!'; notificationIcon.className = 'fas fa-exclamation-triangle notification-icon-error'; notificationModal.className = 'modal error'; notificationModal.style.display = 'block'; return; } document.getElementById('confGame').textContent = namaGame; document.getElementById('confUserId').textContent = riotId; document.getElementById('confProduct').textContent = product; document.getElementById('confPrice').textContent = `Rp ${finalPrice.toLocaleString('id-ID')}`; if (discountApplied) { confDiscount.textContent = `- Rp ${(price * 0.02).toLocaleString('id-ID')}`; confDiscountRow.style.display = 'list-item'; } else { confDiscountRow.style.display = 'none'; } confirmationModal.style.display = 'block'; }); // Event listener untuk tombol terapkan promo applyPromoBtn.addEventListener('click', function() { const promoCode = promoCodeInput.value.toUpperCase(); const selectedPrice = parseInt(selectedPriceInput.value); if (!selectedPrice) { notificationMessage.textContent = 'Pilih nominal top up terlebih dahulu!'; notificationIcon.className = 'fas fa-exclamation-triangle notification-icon-error'; notificationModal.className = 'modal error'; notificationModal.style.display = 'block'; return; } if (promoCode === 'ZAANXGG') { discountApplied = true; const discountAmount = selectedPrice * 0.02; const newPrice = selectedPrice - discountAmount; summaryPriceDisplay.innerHTML = `Rp ${selectedPrice.toLocaleString('id-ID')} Rp ${newPrice.toLocaleString('id-ID')}`; notificationMessage.textContent = 'Kode promo berhasil diterapkan!'; notificationIcon.className = 'fas fa-check-circle notification-icon-success'; notificationModal.className = 'modal success'; notificationModal.style.display = 'block'; } else if (promoCode === 'ZAANXGACOR') { discountApplied = false; summaryPriceDisplay.textContent = `Rp ${selectedPrice.toLocaleString('id-ID')}`; notificationMessage.textContent = 'Kode promo sudah tidak berlaku!'; notificationIcon.className = 'fas fa-exclamation-triangle notification-icon-error'; notificationModal.className = 'modal error'; notificationModal.style.display = 'block'; } else { discountApplied = false; summaryPriceDisplay.textContent = `Rp ${selectedPrice.toLocaleString('id-ID')}`; let msg = 'Kode promo tidak valid!'; if (promoCode === 'ZAANXGACOR') { msg = 'Kode promo sudah tidak berlaku!'; } notificationMessage.textContent = msg; notificationIcon.className = 'fas fa-exclamation-triangle notification-icon-error'; notificationModal.className = 'modal error'; notificationModal.style.display = 'block'; } }); function startTimer(duration, display) { clearInterval(timerInterval); let timer = duration; timerInterval = setInterval(function () { let minutes = parseInt(timer / 60, 10); let seconds = parseInt(timer % 60, 10); minutes = minutes < 10 ? "0" + minutes : minutes; seconds = seconds < 10 ? "0" + seconds : seconds; display.textContent = minutes + ":" + seconds; if (--timer < 0) { clearInterval(timerInterval); display.textContent = "Waktu Habis!"; qrisModal.style.display = 'none'; alert('Waktu pembayaran Anda telah habis. Silakan pilih ulang nominal.'); } }, 1000); } confirmOrderBtn.addEventListener('click', function() { confirmationModal.style.display = 'none'; // Hitung ulang harga final untuk ditampilkan di modal QRIS let price = parseInt(selectedPriceInput.value); let finalPrice = price; if (discountApplied) { finalPrice = price - (price * 0.02); } totalPriceDisplay.textContent = `Rp ${finalPrice.toLocaleString('id-ID')}`; qrisModal.style.display = 'block'; startTimer(paymentTimeLimit, timerDisplay); }); whatsappLink.addEventListener('click', function(e) { const riotId = document.getElementById('riotId').value; const product = selectedProductInput.value; const price = selectedPriceInput.value; if (!riotId || !product) { e.preventDefault(); return; } let finalPrice = parseInt(price); if(discountApplied) { finalPrice = finalPrice - (finalPrice * 0.02); } const message = `Halo, saya mau konfirmasi pesanan:\n\n` + `Game: *${namaGame}*\n` + `Riot ID: *${riotId}*\n` + `Produk: *${product}*\n` + `Total Bayar: *Rp ${finalPrice.toLocaleString('id-ID')}*\n\n` + `Saya sudah melakukan pembayaran. Mohon segera diproses. (Saya akan kirim bukti transfer di chat ini)`; const url = `https://api.whatsapp.com/send?phone=${nomorWhatsApp}&text=${encodeURIComponent(message)}`; whatsappLink.href = url; }); // --- Preloader Script --- window.addEventListener('load', function() { const preloader = document.querySelector('.preloader'); preloader.classList.add('hidden'); }); });