Introduction
505pay Payment Gateway API documentation — accept QRIS, VA, e-wallets, and card payments in Indonesia
The 505pay API enables Indonesian businesses to accept payments via QRIS, Virtual Account, e-wallets (GoPay, OVO, DANA, ShopeePay), PayLater (Kredivo, Akulaku), and Card 3DS — all through a single integration.
New to 505pay?
Start with the Quickstart — sign up at dashboard.505pay.link for a sandbox merchant (auto-approved) and you can make your first real API call in under 5 minutes.
API services
Auth Service
Identity & access management — OAuth2 tokens, OIDC clients, API keys, RBAC, webhooks
Payments Service
Payment intents, refunds, settlements, disputes, routing, PSP credentials
POS Service
Point-of-sale terminals, registers, transactions, receipts, merchant onboarding
Recon Service
Reconciliation runs, exceptions, disbursements, period locks, risk holds, deductions
Top recipes
Step-by-step tutorials for the most common integration tasks:
Accept your first payment
Create a QRIS intent, display the QR code, and confirm via webhook
Issue a refund
Full or partial refund against a completed payment attempt
Build a hosted checkout
Redirect the payer to 505pay's checkout page — no frontend code required
Debug a failed webhook
Diagnose delivery failures, verify signatures, replay missed events
Guides
Payment lifecycle
State machine, webhook events, TTLs, and refund support per method
Webhooks
HMAC-SHA256 signature verification, retry schedule, dead-letter handling
API keys
Create, rotate, and revoke API keys — leaked-key emergency playbook
Authentication
OAuth2 client credentials, token scopes, OIDC client setup
Changelog
See what's new — or subscribe to the RSS feed for release notifications.
Was this page helpful?