Integrasi Payment Gateway ke Website dalam 1 Hari: Midtrans & Xendit

Tutorial langkah demi langkah mengintegrasikan payment gateway Indonesia ke website Anda — dari setup akun hingga testing transaksi nyata.

Payment gateway adalah komponen kritis untuk website e-commerce atau platform berbayar. Di Indonesia, dua pilihan paling populer adalah Midtrans (milik Gojek) dan Xendit. Artikel ini memandu Anda dari nol hingga bisa menerima pembayaran nyata.

Midtrans vs Xendit: Pilih yang Mana?

Midtrans: Lebih mature, dokumentasi lebih lengkap, support metode pembayaran paling banyak (termasuk QRIS, VA semua bank, kartu kredit). Fee: 0.7-3% per transaksi.

Xendit: API yang lebih developer-friendly, disbursement (pencairan dana) lebih mudah, cocok untuk marketplace atau platform. Fee kompetitif.

Setup Midtrans dalam 5 Langkah

  1. Daftar akun di dashboard.midtrans.com
  2. Dapatkan Server Key dan Client Key dari menu Settings > Access Keys
  3. Install SDK: npm install midtrans-client
  4. Buat endpoint backend untuk membuat transaksi
  5. Tambahkan Snap.js di frontend untuk popup pembayaran

Contoh Implementasi Backend (Node.js)

Berikut contoh sederhana membuat transaksi Midtrans Snap:

const midtransClient = require('midtrans-client');
const snap = new midtransClient.Snap({
  isProduction: false,
  serverKey: 'YOUR_SERVER_KEY'
});

const params = {
  transaction_details: {
    order_id: 'order-' + Date.now(),
    gross_amount: 150000
  },
  customer_details: {
    first_name: 'Budi',
    email: 'budi@example.com'
  }
};

const transaction = await snap.createTransaction(params);
// transaction.token digunakan di frontend

Handling Webhook (Notifikasi Pembayaran)

Jangan lupa setup webhook agar server Anda mendapat notifikasi ketika pembayaran berhasil atau gagal. Ini krusial untuk mengupdate status order di database Anda secara otomatis.

Testing di Sandbox

Selalu test di sandbox dulu sebelum go-live. Midtrans dan Xendit menyediakan environment sandbox yang lengkap dengan kartu kredit test dan akun bank virtual untuk simulasi pembayaran.

Go Live Checklist

  • ✅ Ganti server key sandbox dengan production
  • ✅ Set isProduction: true
  • ✅ Pastikan webhook URL sudah dikonfigurasi
  • ✅ Test satu transaksi nyata senilai Rp 1.000
  • ✅ Verifikasi notifikasi email/WhatsApp berjalan

Butuh bantuan integrasi payment gateway yang lebih kompleks? Tim Lynovra siap membantu!

Butuh Bantuan Implementasi?

Tim Lynovra siap membantu mewujudkan solusi digital untuk bisnis Anda — dari konsultasi hingga deployment.

Konsultasi Gratis Baca Artikel Lain