Five features
MVP ships all five or it doesn't ship.
No checkbox grid. No quarterly roadmap promises. If it's not on this page, we don't do it.
- F1
Providers — Four paths, one API.
Start on Plugipay managed — a sub-merchant on Xendit xenPlatform, auto-provisioned at signup. QRIS, VA across five banks, OVO, DANA, LinkAja, ShopeePay, cards, Alfamart/Indomaret. No keys to paste, no dashboards to wire up. Or bring your own Xendit, Midtrans, or PayPal.
plugipay providers switch --from xendit --to midtrans
Move between providers later without re-integrating. Event IDs stay continuous so your webhook consumers don't notice the swap. We're worse than Primer at global routing. Better at Indonesia, and better at "up and running before lunch."
- F2
Events — Webhooks that survive a bad Tuesday.
Every state change hits the outbox inside the same Postgres transaction. Huudis fans out with retries, dedup, and a circuit breaker. Dropped one?
plugipay events replay --id evt_01HXZ8...
Re-emit matching rows with the same signature. Your idempotent handler sees one event, not two.
- F3
Subscriptions — A ledger you can actually reconcile.
Plans, trials, coupons, proration, pause/resume, dunning. Every charge writes a balanced double-entry row.
sum(debits) === sum(credits)at every point in time. PPN 11% built in. Flat fee, never a percent of your MRR. - F4
Portal — Stop answering billing tickets at 2am.
Signed 15-minute portal sessions. Your buyers update their card, cancel at period end, or download past invoices themselves. You keep the customer relationship — we never see their login.
- F5
CLI — A local loop that doesn't make you miss Stripe CLI.
plugipay listenforwards live events to localhost with signature verification.plugipay clocks advance --days 35time-travels a subscription through dunning in under a second. Every REST endpoint has a subcommand. Free sandbox, deterministic fake adapter.
Five features. No roadmap theatre.
We publish what ships and nothing we haven't built yet. See the pricing page for what's free and what's paid.