Getting Started π
Introduction
Welcome to the Komerce Payment API β a simple, secure, and flexible payment solution that allows you to accept and manage transactions through Virtual Accounts (VA) and QRIS seamlessly.
This API is designed for developers and businesses that need to integrate payment capabilities directly into their applications or systems.
Whether youβre running an e-commerce platform, a digital service, or a mobile app, Komerce Payment provides a unified way to handle payments, confirmations, and settlements efficiently.
π API Overview
The Komerce Payment API supports two main environments:
| Environment | Base URL | Description |
|---|---|---|
Sandbox | Used for development and testing with simulated transactions. | |
Production | Live environment for real payment transactions. |
π‘ The Sandbox environment behaves like a real payment flow but uses simulated payment actions (for example, clicking a βSimulate Paymentβ button on the sandbox payment page).
βοΈ Key Capabilities
- Virtual Account (VA) Payments β Automatically generate and track payments using various bank VAs.
- QRIS Payments β Accept QR-based payments from any QRIS-supported mobile banking or e-wallet.
- Payment Callback β Get instant notifications via webhook when a transaction status changes.
- Sandbox Mode β Safely test payment flows before going live.
- Dashboard Integration β Manage and monitor transactions in one place.
π Authentication
All API requests require a valid API Key, which can be generated from your Merchant Dashboard.
The API uses Bearer Token Authentication:
key: YOUR_API_KEY
β οΈ Keep your API keys secure and never expose them in public repositories or client-side code.
π§© Available Payment Channels
| Channel | Description |
|---|---|
VA β BCA, BNI, BRI, Mandiri, Permata, etc | Virtual Account payments across supported banks. |
QRIS | Dynamic QR code generated per transaction for multi-platform payments. |
π Next Steps
Ready to start?
Continue to the Endpoint guide to learn how to create your first transaction and test it in sandbox mode.