Payments made easier
We support various payment methods: bank transfer, virtual accounts, e-wallets, and marketplace/outlets. Safe, fast, and convenient.
No results. Try a different keyword or change the category.
Available
Name
Category
No.
—
Recipient Name
—
Payment Steps
Copied ✓
General Q&A – How to Pay
What payment methods are supported?
Bank transfers, Virtual Accounts (VA), debit/credit cards, e-wallets, and official marketplace/outlet partners.
How do I pay via bank transfer?
Choose your bank, copy the displayed account/VA number, transfer the exact amount, and the system will auto-detect it.
What is the Virtual Account (VA) number format?
A VA consists of a bank code + customer ID (e.g.,
2601 + Contract Number for Mandiri VA). Use exactly as shown for automatic verification.How long until my payment is received?
Typically 1–5 minutes after a successful transaction; interbank transfers may take slightly longer.
Are there any additional fees?
Some channels (e.g., interbank/e-wallet) may charge an admin fee. The total amount is shown before confirmation.
My payment hasn't been detected—what should I do?
Wait 5–10 minutes and check your bank/e-wallet status. If it still doesn’t show, prepare your proof of transaction and contact customer service.
Is there a minimum amount or cut-off time?
Minimum amounts follow each channel’s policy (generally ≥ Rp10,000). VAs have an expiry—please pay before they expire.
How do I pay via marketplace/outlet?
Choose an official partner, enter your Contract Number if requested, save the payment code, and complete payment at the cashier/checkout page.
Can the account number change? How to avoid scams
The destination number may differ per transaction. Always refer to numbers shown on the official app/website. We will never ask for your PIN/OTP or send APK files.
Do I need to upload proof of payment?
Not required for automatic methods (VA/e-wallet). If it hasn't been detected, upload proof when contacting CS to speed up verification.
${initials||''}
`;
}function statusLamp(isAvail){
return ``;
}function cardTemplate(item){
const cat=item.category==='bank'?'Bank Transfer':item.category==='va'?'Virtual Account':item.category==='ewallet'?'E-Wallet':'Marketplace/Outlet';
const isAvail=item.available!==false;
const disable=isAvail?'':'tw-opacity-60 tw-cursor-not-allowed';
const right=isAvail
? 'See steps
'
: 'Unavailable
';
return ``;
}
// default: show only available
availableOnly = true;
availableOnlyEl.checked = true;function renderPills(){pillsEl.innerHTML=CATEGORIES.map(pillTemplate).join('');}
function renderLogos(){
logoPreview.innerHTML=PAYMENT_METHODS.slice(0,9).map(m=>`${logoBadge(m)}
`).join('');
}function filterList(){
const q=query.trim().toLowerCase();
return PAYMENT_METHODS.filter(m=>{
const matchCat=activeCategory==='all'||m.category===activeCategory;
const hay=`${m.name} ${m.accountNumber||''} ${m.accountName||''}`.toLowerCase();
const matchQ=q?hay.includes(q):true;
const isAvail=m.available!==false;
const matchAvail=availableOnly?isAvail:true;
return matchCat&&matchQ&&matchAvail
});
}function renderGrid(){
const f=filterList();
gridEl.innerHTML=f.map(cardTemplate).join('');
emptyEl.classList.toggle('tw-hidden',f.length!==0);
if(f.length===0) emptyEl.classList.remove('tw-hidden');
}/* ===== Modal enhancements ===== */
function setBrandColor(color){
const panel=modalEl.querySelector('.pw-modal-panel');
panel.style.setProperty('--brand', color || '#0ea5e9');
}function trapFocus(e){
if(e.key!=='Tab') return;
const focusables=modalEl.querySelectorAll('button,[href],input,select,textarea,[tabindex]:not([tabindex="-1"])');
if(!focusables.length) return;
const first=focusables[0], last=focusables[focusables.length-1];
if(e.shiftKey && document.activeElement===first){ last.focus(); e.preventDefault(); }
else if(!e.shiftKey && document.activeElement===last){ first.focus(); e.preventDefault(); }
}function openModal(item){
currentItem=item;
lastFocus=document.activeElement;modalTitle.textContent=item.name;
modalCategory.textContent=item.category==='bank'?'Bank Transfer':item.category==='va'?'Virtual Account':item.category==='ewallet'?'E-Wallet':'Marketplace/Outlet';
accountLabel.textContent=item.accountLabel||'No.';
accountNumber.textContent=item.accountNumber||'—';
accountName.textContent=item.accountName||'—';
stepsList.innerHTML=(item.steps||[]).map(s=>`${m.name}
