Lewati ke konten
Fitur lengkap

Fitur API QRIS untuk Developer dan Bisnis

QRIS dinamis, deteksi pembayaran otomatis, webhook aman, sampai dashboard dan link pembayaran. Semua dalam satu API key, tanpa potongan dari kami.

  • 24 fitur
  • Mode uji
  • Multi toko
01 · Pembuatan QRIS

Pembuatan QRIS

Mengubah QRIS statis milik Anda menjadi QRIS bernominal untuk setiap transaksi.

QRIS dinamis

Nominal tertanam di QR (tag 54) dengan checksum CRC-16 baru. Data merchant tidak diubah.

Kode unik otomatis

Rentang bisa diatur, mode tambah atau kurang, dijamin unik selama tagihan menunggu.

Masa berlaku fleksibel

Atur per tagihan, misalnya 15 menit untuk checkout atau 24 jam untuk invoice.

Idempoten per order_id

Request ulang dengan order_id sama mengembalikan tagihan yang sama, tidak dobel.

Banyak QRIS

Hubungkan QRIS dari beberapa bank/e-wallet dan pilih per tagihan atau per toko.

Gambar QR siap pakai

Dapatkan string QRIS untuk dirender sendiri atau URL gambar PNG siap tampil.

02 · Deteksi pembayaran

Deteksi pembayaran

Mengetahui pembayaran masuk tanpa membuka aplikasi merchant dan tanpa menyimpan password bank.

Baca notifikasi dana masuk

Aplikasi pendamping Android membaca notifikasi aplikasi merchant secara real time.

Pencocokan otomatis

Dicocokkan berdasarkan total unik, QRIS, dan waktu notifikasi.

Dukungan dua HP

Pasang di dua HP sebagai cadangan, notifikasi ganda disaring otomatis.

Antrean offline

Saat sinyal hilang, notifikasi disimpan dan dikirim berurutan saat online.

Peringatan HP offline

Dapat kabar bila HP pendamping tidak aktif terlalu lama.

Pasangkan manual

Mutasi yang tidak cocok (salah nominal) bisa dipasangkan ke tagihan dalam satu klik.

03 · API & webhook

API & webhook

Antarmuka REST JSON yang sederhana dan webhook yang aman untuk developer.

REST API JSON

Buat, ambil, batalkan tagihan. Autentikasi Bearer, respons JSON ringkas.

Webhook HMAC SHA-256

Setiap callback ditandatangani dengan timestamp untuk mencegah pemalsuan dan replay.

Kirim ulang otomatis

Hingga 6 kali dengan jeda 1 mnt sampai 24 jam, plus tombol kirim ulang manual.

Mode uji (sandbox)

API key uji dan simulasi pembayaran untuk mengetes tanpa uang sungguhan.

Rotasi API key

Kunci bocor? Buat kunci baru dan cabut yang lama kapan saja.

Contoh kode 6 bahasa

cURL, PHP, Laravel, Node.js, Python, dan Go siap salin.

04 · Untuk bisnis

Untuk bisnis

Fitur yang membantu operasional toko tanpa perlu developer.

Link pembayaran

Buat link bayar bernominal dari dashboard, bagikan lewat chat atau media sosial.

Multi toko

Setiap toko punya API key, callback, dan QRIS sendiri dalam satu akun.

Dashboard & laporan

Grafik omzet, status tagihan, dan riwayat transaksi lengkap.

Ekspor CSV

Unduh transaksi untuk rekonsiliasi atau aplikasi akuntansi.

Notifikasi WhatsApp

Opsional: kirim kabar lunas atau kedaluwarsa ke pembeli dengan template sendiri.

Dana langsung ke Anda

Tidak ada saldo mengendap atau jadwal pencairan dari APIQris.

Contoh kode

Satu request, QRIS dinamis siap tampil

Kirim nominal dan order ID. Respons berisi total dengan kode unik, string QRIS, URL gambar QR, dan waktu kedaluwarsa.

  • Autentikasi Bearer
  • Respons JSON ringkas
  • Error jelas dengan kode

Baca dokumentasi API lengkap →

Buat tagihan QRIS
curl -X POST https://api.apiqris.com/v1/invoices \
  -H "Authorization: Bearer AQ_LIVE_xxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{"amount":50000,"order_id":"INV-1024"}'
<?php
$ch = curl_init('https://api.apiqris.com/v1/invoices');
curl_setopt_array($ch, [
    CURLOPT_POST => true,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer ' . getenv('APIQRIS_KEY'),
        'Content-Type: application/json',
    ],
    CURLOPT_POSTFIELDS => json_encode([
        'amount'   => 50000,
        'order_id' => 'INV-1024',
    ]),
]);
$qris = json_decode(curl_exec($ch), true);
echo $qris['qr_image_url']; // tampilkan ke pembeli
use Illuminate\Support\Facades\Http;

$qris = Http::withToken(config('services.apiqris.key'))
    ->post('https://api.apiqris.com/v1/invoices', [
        'amount'   => $order->total,
        'order_id' => $order->number,
    ])
    ->throw()
    ->json();

return view('checkout.qris', ['qris' => $qris]);
const res = await fetch('https://api.apiqris.com/v1/invoices', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.APIQRIS_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({ amount: 50000, order_id: 'INV-1024' }),
});
const qris = await res.json();
console.log(qris.total_amount, qris.qr_image_url);
import os, requests

r = requests.post(
    "https://api.apiqris.com/v1/invoices",
    headers={"Authorization": f"Bearer {os.environ['APIQRIS_KEY']}"},
    json={"amount": 50000, "order_id": "INV-1024"},
    timeout=15,
)
r.raise_for_status()
qris = r.json()
print(qris["total_amount"], qris["qr_image_url"])
body := strings.NewReader(`{"amount":50000,"order_id":"INV-1024"}`)
req, _ := http.NewRequest("POST", "https://api.apiqris.com/v1/invoices", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("APIQRIS_KEY"))
req.Header.Set("Content-Type", "application/json")

res, err := http.DefaultClient.Do(req)
if err != nil {
    log.Fatal(err)
}
defer res.Body.Close()
Pilih integrasi

Fitur mana yang Anda butuhkan?

Pilih sistem Anda, kami tunjukkan jalurnya.

Sistem apa yang Anda pakai?
Rekomendasi integrasi API penuh + webhook

Buat tagihan dari backend, tampilkan QR di halaman checkout Anda, terima webhook saat lunas.

Lihat panduannya →
Rekomendasi integrasi API + kirim gambar QR

Bot memanggil API, mengirim QR ke chat, lalu membalas otomatis saat webhook lunas masuk.

Lihat panduannya →
Rekomendasi integrasi Plugin gateway

Pasang plugin, isi API key. Pesanan berubah Processing otomatis setelah dibayar.

Lihat panduannya →
Rekomendasi integrasi Modul gateway WHMCS

Invoice dibayar QRIS dan layanan pelanggan aktif sendiri tanpa admin.

Lihat panduannya →
Rekomendasi integrasi API + polling status

Tampilkan QR bernominal di layar kasir, transaksi tertutup otomatis saat lunas.

Lihat panduannya →
Rekomendasi integrasi Link pembayaran

Buat link bayar dari dashboard, bagikan ke pembeli lewat chat atau media sosial.

Lihat panduannya →
Perbandingan

QRIS manual vs APIQris vs payment gateway

FiturQRIS statis manualAPIQrisPayment gateway
QRIS dinamis per pesanan✗✓✓
Konfirmasi otomatis✗✓✓
Webhook ke sistem Anda✗✓✓
Dana langsung ke rekening sendiri✓✓✗
Tanpa potongan perantara✓✓✗
Tanpa dokumen badan usaha✓✓Sering wajib
Butuh HP Android pendeteksiTidakYaTidak
FAQ

Pertanyaan tentang fitur

Apakah semua fitur gratis?

Fitur inti (QRIS dinamis, deteksi, webhook, dashboard, link pembayaran) gratis dan tanpa potongan per transaksi dari APIQris.

Apakah bisa dipakai tanpa coding?

Bisa. Gunakan link pembayaran dari dashboard. Untuk otomatisasi ke sistem sendiri barulah perlu integrasi API atau plugin.

Apakah ada plugin siap pakai?

Pola integrasi WooCommerce dan WHMCS tersedia. Lihat panduan masing-masing di halaman integrasi.

Berapa banyak QRIS yang bisa dihubungkan?

Lebih dari satu. Cocok untuk usaha dengan beberapa cabang atau beberapa penyedia QRIS.

Apakah ada batas jumlah tagihan?

Ada batas wajar untuk mencegah penyalahgunaan, misalnya batas tagihan menunggu dan laju pembuatan per detik. Detailnya di dashboard.

Lihat semua FAQ →