Banyak toko online kecil di Indonesia masih menerima pembayaran dengan cara paling sederhana: pembeli transfer ke rekening penjual, lalu mengirim foto bukti transfer lewat WhatsApp. Penjual kemudian membuka aplikasi bank dan mencocokkan mutasi satu per satu. Cara ini murah, tetapi rapuh. Nominal bisa meleset, bukti transfer bisa hasil suntingan, dan pesanan yang masuk tengah malam baru diproses keesokan harinya.

Payment gateway adalah layanan yang mengambil alih pekerjaan mencocokkan itu. Toko tidak lagi menebak apakah uang sudah masuk, karena sistemlah yang memberi kabar. Mari kita bahas cara kerjanya, biaya nyatanya, dan persiapan sebelum memasangnya di website.

Apa Itu Payment Gateway?

Payment gateway (gerbang pembayaran) adalah layanan perantara antara halaman checkout toko dan bank atau penerbit alat bayar. Ia meneruskan data transaksi, lalu mengembalikan hasilnya ke toko: "berhasil", "ditolak", atau "menunggu pembayaran". Secara harfiah, arti payment gateway adalah pintu yang harus dilewati setiap pembayaran sebelum sampai ke tujuannya.

Kata "gateway" di sini perlu dibedakan dari gateway di jaringan komputer, yaitu perangkat yang menghubungkan dua jaringan. Keduanya sama-sama menjadi pintu antara dua sistem, tetapi yang dilewatkan berbeda. Jadi, payment gateway artinya gerbang bagi perintah pembayaran, bukan bagi paket data jaringan.

Bagi pemilik toko online, satu integrasi payment gateway membuka banyak cara bayar sekaligus. Pembeli bisa memakai transfer bank, dompet digital, QRIS (Quick Response Code Indonesian Standard), kartu kredit, sampai gerai minimarket. Penjual tidak perlu membuat kerja sama dengan setiap bank satu per satu.

Pihak yang Terlibat dalam Transaksi Payment Gateway

Satu klik "Bayar" melibatkan lebih banyak pihak daripada yang terlihat di layar. Peran masing-masing perlu dipahami agar Anda bisa menelusuri masalah ketika transaksi gagal.

PihakPeran
PembeliMemilih metode bayar dan menyetujui transaksi
Merchant (toko)Membuat tagihan dan menunggu kabar lunas
Payment gatewayMeneruskan data transaksi, lalu mengabarkan hasilnya ke toko
AcquirerBank atau penyedia jasa pembayaran yang menerima transaksi atas nama toko
JaringanVisa, Mastercard, GPN, atau switching QRIS yang menghubungkan antarbank
PenerbitBank pembeli atau penerbit dompet digital yang menyetujui dan mengeluarkan dana

Penyedia populer di Indonesia biasanya merangkap payment processor (pemroses otorisasi dan penyelesaian dana) dan aggregator (penampung banyak merchant kecil di bawah satu kontrak bank). Itu sebabnya UMKM bisa menerima pembayaran kartu tanpa membuka merchant account sendiri di bank.

Dompet digital seperti GoPay, OVO, dan DANA bukan payment gateway, melainkan penerbit uang elektronik tempat dana pembeli disimpan. Begitu pula GPN (Gerbang Pembayaran Nasional), yaitu infrastruktur penghubung transaksi kartu debit antarbank domestik, bukan layanan checkout toko online.

Cara Kerja Payment Gateway: Ditarik atau Didorong

Cara kerja payment gateway paling mudah dipahami jika metode bayar dibagi menjadi dua keluarga. Pada kartu, dana ditarik dari rekening pembeli atas persetujuan bank penerbit. Pada virtual account dan QRIS, pembeli sendiri yang mendorong dana. Perbedaan ini menentukan risiko, kecepatan konfirmasi, dan biaya.

Pembayaran Kartu: Dana Ditarik

Saat pembeli mengetik nomor kartu, payment gateway mengirim permintaan otorisasi melalui acquirer dan jaringan kartu ke bank penerbit. Di tengah alur itu biasanya ada 3-D Secure (lapisan verifikasi tambahan dari bank penerbit). Bank menilai risiko transaksi dari data perangkat dan riwayat belanja. Transaksi berisiko rendah lolos tanpa gangguan, sedangkan yang mencurigakan diminta kode OTP (One-Time Password, kode sekali pakai). Mekanisme ini mirip autentikasi dua faktor saat Anda masuk ke akun.

Cara kerja payment gateway untuk kartu: pembeli, gateway, jaringan kartu, bank penerbit menilai risiko, lalu hasil ke toko.
Cara kerja payment gateway untuk kartu: pembeli, gateway, jaringan kartu, bank penerbit menilai risiko, lalu hasil ke toko.

Otorisasi baru berarti dana sudah "dipesan", belum berpindah. Perpindahan dana terjadi belakangan lewat proses settlement (penyelesaian dana). Karena dananya ditarik, pemegang kartu juga bisa mengajukan chargeback (sanggahan transaksi ke bank penerbit). Jika sanggahan diterima, dana yang sudah diterima toko bisa ditarik kembali.

Virtual Account dan QRIS: Dana Didorong

Pada virtual account (VA), payment gateway meminta bank menerbitkan nomor rekening unik khusus untuk satu tagihan. Pembeli mentransfer ke nomor itu dari m-banking. Karena nomornya unik, bank langsung tahu tagihan mana yang dibayar tanpa perlu mencocokkan nominal. Pembayaran QRIS lewat payment gateway bekerja dengan logika serupa. Kode QR dinamis membawa nominal dan identitas tagihan, lalu pembeli memindainya dengan aplikasi bank atau dompet digital.

Dalam keluarga ini tidak ada otorisasi dari bank penerbit dan tidak ada chargeback model kartu. Pembeli yang memulai transfer, sehingga risiko penipuan kartu curian tidak berlaku. Kelemahannya, pembeli harus berpindah aplikasi untuk membayar, dan sebagian akan lupa menyelesaikannya.

Payment gateway pada virtual account: checkout, nomor VA unik, transfer pembeli, kabar dari bank, lalu webhook ke toko.
Payment gateway pada virtual account: checkout, nomor VA unik, transfer pembeli, kabar dari bank, lalu webhook ke toko.

Webhook: Kabar Lunas yang Sah

Langkah terakhir pada kedua keluarga sama: payment gateway mengirim webhook (notifikasi HTTP otomatis dari server ke server) ke alamat yang ditentukan toko. Isinya data transaksi dalam format JSON, termasuk status terbaru. Webhook inilah yang seharusnya dipakai untuk menandai pesanan lunas.

๐Ÿ’ก Halaman "Terima kasih" setelah pembeli kembali ke toko bukan bukti pembayaran. Status lunas hanya ditentukan oleh webhook yang keasliannya sudah diverifikasi.

Pembeli bisa menutup browser sebelum diarahkan kembali, atau sebaliknya membuka URL itu tanpa membayar. Dokumentasi Midtrans juga mengingatkan dua hal: notifikasi untuk kejadian yang sama bisa terkirim lebih dari sekali, dan urutan kedatangannya tidak selalu sesuai urutan kejadian. Kode penerima webhook harus siap menghadapi keduanya.

Jenis Payment Gateway Berdasarkan Cara Pemasangan

Dari sisi pemilik website, jenis payment gateway yang paling berpengaruh adalah cara pemasangannya. Pilihan ini menentukan seberapa besar kendali Anda atas tampilan checkout, sekaligus seberapa berat kewajiban keamanan data kartu yang Anda tanggung.

  1. Redirect (hosted page): Pembeli dialihkan ke halaman pembayaran milik penyedia, lalu kembali ke toko setelah selesai. Paling cepat dipasang, tetapi tampilan checkout terbatas pada pilihan penyedia.
  2. Popup atau embedded: Jendela pembayaran penyedia muncul di atas halaman toko, misalnya lewat iframe (bingkai yang memuat halaman lain di dalam halaman toko). Pembeli tidak merasa meninggalkan toko, tetapi data kartu tetap diketik di komponen milik penyedia.
  3. Direct API: Toko membangun form pembayaran sendiri dan memanggil payment gateway API milik penyedia secara langsung. Kendali tampilan penuh, tetapi tanggung jawab keamanannya ikut membesar.
  4. Plugin CMS: Modul siap pakai untuk CMS (Content Management System) toko seperti WooCommerce, Magento, PrestaShop, atau OpenCart. Di balik layar, plugin memakai salah satu dari tiga cara di atas.

Kewajiban keamanan yang dimaksud adalah PCI DSS (standar keamanan data kartu yang ditetapkan jaringan kartu). Toko yang menyerahkan seluruh pengetikan data kartu ke halaman penyedia cukup mengisi kuesioner paling ringan, SAQ A. Sejak 2025, toko yang memakai iframe juga wajib memastikan halamannya terlindung dari skrip penyadap form. Toko yang menerima nomor kartu di servernya sendiri masuk ke kuesioner terberat, SAQ D.

Cara pemasangan payment gateway: redirect dan popup cukup SAQ A, direct API tanpa tokenisasi SAQ D, plugin ikut caranya.
Cara pemasangan payment gateway: redirect dan popup cukup SAQ A, direct API tanpa tokenisasi SAQ D, plugin ikut caranya.

Karena itu, integrasi payment gateway lewat API untuk kartu kredit hampir selalu memakai tokenisasi. Skrip penyedia di browser mengubah nomor kartu menjadi token, sehingga nomor aslinya tidak pernah menyentuh server toko. Berbeda dengan enkripsi, token tidak bisa dibuka kembali menjadi nomor kartu tanpa sistem milik penyedia.

Contoh Payment Gateway di Indonesia

Berikut beberapa contoh payment gateway yang aktif melayani merchant Indonesia. Urutannya bukan peringkat.

  1. Midtrans: Bagian dari grup GoTo. Menyediakan Snap (popup dan redirect) serta Core API, dan menerima pendaftaran perorangan dengan KTP dan NPWP.
  2. Xendit: Mendapat izin payment gateway dari Bank Indonesia pada 6 Februari 2020. Per September 2026 tidak menerima usaha perorangan, minimal harus berbentuk Perseroan Perorangan.
  3. DOKU: Termasuk pemain lama di Indonesia. Halaman tarifnya sudah mencantumkan QRIS 0% untuk transaksi hingga Rp100.000.
  4. Nama lain yang sering dipakai: iPaymu, Duitku, Flip, Tripay, dan Mayar.

Sebelum memilih penyedia mana pun, cek izinnya di daftar lembaga berizin sistem pembayaran di situs Bank Indonesia. Cari nama badan hukumnya, lalu pastikan statusnya "Berizin", bukan "Izin Dicabut". Nama merek sering berbeda dengan nama PT yang tercatat, jadi cocokkan dengan nama perusahaan di syarat dan ketentuan penyedia.

Manfaat Payment Gateway bagi Toko Online

Manfaat payment gateway terasa paling jelas ketika jumlah pesanan mulai melampaui kemampuan admin untuk mengecek mutasi secara manual.

  1. Konfirmasi otomatis 24 jam: Pesanan pukul dua pagi langsung berstatus lunas tanpa menunggu admin bangun.
  2. Banyak metode pembayaran dalam satu integrasi: Satu kontrak membuka akses ke belasan bank, dompet digital, QRIS, kartu, dan minimarket.
  3. Data kartu tidak singgah di server toko: Risiko kebocoran nomor kartu ditanggung penyedia yang memang diaudit untuk itu.
  4. Rekonsiliasi lebih rapi: Setiap pembayaran terhubung dengan nomor pesanan, bukan dengan tangkapan layar.
  5. Skala tanpa menambah admin: Pesanan naik sepuluh kali lipat tanpa menambah pekerjaan mencocokkan mutasi.

Kelemahan dan Biaya Payment Gateway

Kemudahan itu tentu tidak gratis. Payment gateway memungut biaya per transaksi, dan besarnya sangat bergantung pada metode bayar. Tabel berikut merangkum tarif resmi dua penyedia per 9 Oktober 2026.

MetodeMidtransDOKU
Virtual accountRp4.000Rp4.000 (BCA Rp4.500)
QRIS0,7%0,7%; 0% untuk Rp0โ€“100.000
DANA1,5%1,5%
OVO1,5%2%โ€“3,18%
ShopeePay2%2%โ€“4%
Kartu kredit2,9% + Rp2.0002,8% + Rp2.000
Alfamart / IndomaretRp5.000 / Rp5.000Rp5.000 / Rp6.500

Sumber: halaman tarif resmi Midtrans dan DOKU, diakses 9 Oktober 2026. Tarif belum termasuk PPN, kecuali QRIS, GoPay, dan ShopeePay di Midtrans.

Persentase di tabel hanya sebagian cerita. Sejak 1 Oktober 2026, Xendit menerapkan biaya pemrosesan untuk setiap percobaan pembayaran, pencairan, dan refund. Ada juga biaya minimum USD 50 per bulan untuk akun tidak aktif atau bertagihan di bawah angka itu. Saat transaksi di-refund, biaya awalnya tidak dikembalikan.

Sebaliknya, DOKU dan Midtrans menyatakan biaya hanya dikenakan pada transaksi yang berhasil. Jadi, baca juga halaman kebijakan harga, bukan hanya tabel tarif.

Selain biaya, ada beberapa pertimbangan lain yang perlu Anda ketahui:

  1. Dana tidak langsung masuk rekening: Uang mengendap di saldo penyedia sampai jadwal settlement. Arus kas toko jadi bergeser beberapa hari.
  2. Syarat dokumen: Tidak semua penyedia menerima perorangan. Toko yang belum berbadan usaha pilihannya lebih terbatas.
  3. Ketergantungan pada vendor: Penyedia bisa mengubah tarif atau API. Contohnya, Xendit mengenakan biaya pemeliharaan USD 250 per bulan bagi merchant yang belum pindah dari API lamanya per 1 Oktober 2026.
  4. Risiko chargeback pada kartu: Sanggahan pembeli bisa membuat dana yang sudah cair ditarik kembali, dan biasanya disertai biaya penanganan sengketa.

Payment Gateway di Mata Bank Indonesia

Payment gateway bukan sekadar perusahaan teknologi. Ia adalah penyelenggara jasa sistem pembayaran yang wajib berizin dari Bank Indonesia. Dasar hukumnya kini PBI No. 10 Tahun 2025 tentang Pengaturan Industri Sistem Pembayaran. Aturan ini berlaku sejak 31 Maret 2026 dan mencabut PBI No. 22/23/PBI/2020 yang sebelumnya menjadi rujukan.

Dalam aturan baru, kegiatan penyedia jasa pembayaran dikelompokkan menjadi tiga paket aktivitas. Penjelasan Pasal 34 menyebut penyelenggaraan payment gateway secara eksplisit sebagai bagian dari aktivitas penerusan transaksi pembayaran. Penyelenggaranya wajib berbadan hukum Indonesia, memenuhi modal minimum, dan menjaga modal berjalan sesuai risiko transaksinya.

Dari sini terjawab pula soal cara membuat payment gateway sendiri. Untuk menerima pembayaran atas nama pihak lain, jawabannya hampir pasti tidak realistis bagi sebuah toko. Anda membutuhkan izin BI, permodalan, audit PCI DSS sebagai penyedia layanan, dan kerja sama langsung dengan setiap bank. Yang realistis adalah membangun halaman checkout sendiri di atas payment gateway berizin lewat API-nya.

Cara Memilih Payment Gateway dan Metode Bayar

Karena VA dikenai biaya tetap sedangkan QRIS dan dompet digital dikenai persentase, metode termurah bergantung pada nominal belanja rata-rata. Hitungan berikut memakai tarif Midtrans sebelum PPN: VA Rp4.000, QRIS 0,7%, dan kartu kredit 2,9% + Rp2.000. Dompet digital seperti DANA (1,5%) berada di antara QRIS dan kartu.

BelanjaVAQRISKartu
Rp150.000Rp4.000Rp1.050Rp6.350
Rp300.000Rp4.000Rp2.100Rp10.700
Rp1 jutaRp4.000Rp7.000Rp31.000
Biaya payment gateway per transaksi: VA tetap Rp4.000, QRIS 0,7% naik seiring nominal, keduanya impas di Rp571.429.
Biaya payment gateway per transaksi: VA tetap Rp4.000, QRIS 0,7% naik seiring nominal, keduanya impas di Rp571.429.

Titik impas VA dan QRIS ada di Rp571.429 (Rp4.000 dibagi 0,7%). Dari angka itu kita bisa menarik beberapa rekomendasi praktis:

  1. Rata-rata belanja di bawah Rp100.000: Prioritaskan QRIS. Sejak 1 Oktober 2026, Bank Indonesia menetapkan MDR (Merchant Discount Rate, potongan per transaksi yang ditanggung merchant) QRIS 0% hingga Rp100.000. Untuk usaha mikro, batasnya Rp500.000. Pastikan penyedia Anda sudah menerapkannya, karena per 9 Oktober 2026 halaman tarif Midtrans masih mencantumkan 0,7% tanpa catatan ambang.
  2. Rata-rata Rp100.000โ€“Rp570.000: QRIS tetap paling murah, tetapi sediakan VA untuk pembeli yang terbiasa transfer. Di atas Rp571.429, VA yang lebih hemat.
  3. Kartu kredit: Buka hanya jika memang dibutuhkan, misalnya untuk pelanggan luar negeri atau produk langganan. Biayanya tiga sampai empat kali lipat metode lain.
  4. Belum berbadan usaha: Mulai dari penyedia yang menerima pendaftaran perorangan, atau dirikan Perseroan Perorangan bila penyedia incaran mensyaratkan badan usaha.

Cara Menggunakan Payment Gateway di Website

Bagian ini merangkum alur integrasi yang berlaku umum di hampir semua penyedia. Contoh kodenya memakai Midtrans karena format signature-nya terdokumentasi terbuka.

Langkah #1: Daftar dan Mulai di Sandbox

Daftarkan akun, lalu kerjakan seluruh integrasi di mode sandbox (lingkungan uji tanpa uang sungguhan). Sandbox dan production memakai kunci API yang berbeda, jadi Anda bisa menguji sambil menunggu verifikasi dokumen selesai.

Langkah #2: Pilih Plugin atau API

Untuk toko berbasis WooCommerce atau Magento, plugin resmi penyedia adalah jalan tercepat. Toko seperti ini cukup berjalan di layanan web hosting dengan dukungan PHP dan database. Untuk aplikasi buatan sendiri, gunakan pustaka resmi penyedia dan REST API-nya.

Langkah #3: Buat Endpoint Webhook dan Verifikasi Signature

Endpoint webhook wajib memastikan notifikasi benar-benar berasal dari payment gateway. Midtrans menyertakan signature_key, yaitu hash SHA512 dari gabungan order_id, status_code, gross_amount, dan server key Anda. Xendit memakai pendekatan lain, yaitu header x-callback-token yang dicocokkan dengan token di dashboard.

Contoh berikut memverifikasi signature Midtrans dengan PHP:

PHP
<?php
$key  = getenv('MIDTRANS_SERVER_KEY');
$body = file_get_contents('php://input');
$n    = json_decode($body, true);

$raw = $n['order_id'] . $n['status_code']
     . $n['gross_amount'] . $key;
$expected = hash('sha512', $raw);
$sig = $n['signature_key'] ?? '';

if (!hash_equals($expected, $sig)) {
    http_response_code(403);
    exit('signature tidak cocok');
}

http_response_code(200);
echo 'OK';

Kami menguji kode ini di PHP 8 dengan notifikasi tiruan: signature benar dibalas 200, signature palsu dibalas 403. Pakai gross_amount persis seperti yang dikirim (misalnya "150000.00"), karena satu karakter berbeda menghasilkan hash berbeda. Fungsi hash_equals() mencegah perbandingan bocor lewat selisih waktu eksekusi.

Setelah signature lolos, tandai pesanan lunas hanya jika statusnya belum lunas, agar notifikasi ganda tidak memproses pesanan dua kali. Balas secepat mungkin: Midtrans menunggu paling lama 15 detik sebelum menganggap pengiriman gagal, lalu mengulanginya hingga lima kali.

Langkah #4: Uji Semua Skenario

Uji pembayaran berhasil, gagal, kedaluwarsa, dan notifikasi yang datang dua kali. Payment gateway tidak bisa mengirim webhook ke localhost, jadi gunakan ngrok untuk membuka alamat publik sementara ke laptop Anda selama pengujian.

Langkah #5: Pindah ke Production

Ganti kunci sandbox dengan kunci production, lalu daftarkan URL notifikasi production di dashboard. Midtrans masih menerima URL http://, tetapi sangat menyarankan https:// dan menolak sertifikat self-signed. Pasang sertifikat SSL yang valid agar halaman checkout dan endpoint webhook sama-sama terenkripsi.

Pertanyaan yang Sering Diajukan

Apakah payment gateway aman?

Penyedia berizin BI diawasi regulator dan wajib memenuhi standar keamanan data kartu. Celah yang lebih sering terjadi justru ada di sisi toko, misalnya endpoint webhook yang tidak memverifikasi signature sehingga pesanan bisa ditandai lunas dengan notifikasi palsu.

Apakah memakai payment gateway berbayar?

Ya. Umumnya tanpa biaya pendaftaran, tetapi setiap transaksi dikenai biaya tetap (Rp4.000 untuk VA) atau persentase (0,7% untuk QRIS).

Bisakah daftar payment gateway tanpa NPWP?

Sejak 1 Juli 2024, NIK berfungsi sebagai NPWP bagi wajib pajak orang pribadi penduduk, sesuai PMK 136/2023. Jika NIK Anda sudah terdaftar di DJP, nomor itulah yang dipakai. Tanyakan langsung ke penyedia apakah formulirnya sudah menerima NIK di kolom NPWP.

Bisakah perorangan memakai payment gateway?

Bisa, tetapi tidak di semua penyedia. Midtrans menerima perorangan dengan KTP dan NPWP, sedangkan Xendit kini hanya menerima badan usaha, minimal Perseroan Perorangan.

Payment gateway di Indonesia apa saja?

Yang banyak dipakai antara lain Midtrans, Xendit, DOKU, iPaymu, Duitku, Flip, Tripay, dan Mayar. Status izinnya bisa dicek di situs Bank Indonesia.

Kesimpulan

Payment gateway adalah perantara berizin Bank Indonesia yang menggantikan pekerjaan mencocokkan bukti transfer secara manual. Ia menghubungkan checkout toko dengan bank, dompet digital, QRIS, dan jaringan kartu. Pilih metode bayar berdasarkan nominal belanja rata-rata: QRIS unggul untuk transaksi kecil, VA untuk transaksi besar, dan kartu hanya jika memang dibutuhkan. Bagi developer, pegangan utamanya satu: status lunas hanya ditentukan oleh webhook yang signature-nya sudah diverifikasi.

Semoga artikel ini membantu.