← Home|← Back to blog

Suka Duka Integrasi API: Pengalaman dari Lapangan

Cerita teknis dan non-teknis tentang integrasi API — dari payment gateway, WhatsApp API, hingga OAuth. Pelajaran berharga buat developer yang baru mulai.

  • API
  • integrasi
  • pengalaman
  • backend
  • Midtrans
  • WhatsApp API
  • OAuth

Integrasi API adalah salah satu pekerjaan yang paling sering kami lakukan di Dot Code Indonesia. Dari payment gateway, WhatsApp API, Google Maps, sampai integrasi dengan sistem ERP klien. Tiap proyek punya cerita sendiri — ada yang mulus, ada juga yang bikin begadang.

Suka: Integrasi Payment Gateway (Midtrans)

Proyek pertama kami integrasi Midtrans untuk toko online. Dokumentasi rapi, ada dashboard testing (sandbox), dan SDK untuk Next.js sudah siap pakai.

Yang bikin seneng:

Kode notifikasi webhook-nya sederhana:

export async function POST(req: Request) {
  const notification = await req.json()
  const orderId = notification.order_id
  const status = notification.transaction_status

  if (status === "settlement") {
    await prisma.order.update({
      where: { id: orderId },
      data: { status: "paid" },
    })
  }

  return Response.json({ ok: true })
}

Duka: Integrasi WhatsApp API (Twilio)

Nah, ini yang bikin pelajaran berharga. Kami perlu fitur notifikasi WhatsApp otomatis untuk konfirmasi pesanan. Awalnya pakai Twilio.

Masalah yang dihadapi:

Solusi: Akhirnya migrasi ke WhatsApp Gateway lokal yang support direct send tanpa template, cocok untuk notifikasi transaksi.

Suka: Integrasi OAuth Google Login

Fitur login dengan Google selalu diminta klien. Implementasinya pakai NextAuth.js — tinggal tambah provider Google dan masukin client ID/secret dari Google Cloud Console.

import NextAuth from "next-auth"
import Google from "next-auth/providers/google"

export const { handlers, auth } = NextAuth({
  providers: [Google({ clientId: "...", clientSecret: "..." })],
})

Yang bikin seneng: pengguna tinggal klik satu tombol — gak perlu bikin akun baru. Conversion rate login naik drastis.

Duka: REST API Tanpa Dokumentasi

Ini momok terbesar. Beberapa kali kami integrasi dengan API pihak ketiga yang dokumentasinya:

Pelajaran: Selalu minta akses sandbox/demo dulu sebelum tanda tangan kontrak. Kalau dokumentasi berantakan dari awal, API-nya biasanya juga bermasalah.

Tips dari Pengalaman

  1. Always use sandbox first — Jangan pernah integrasi langsung ke production
  2. Handle error gracefully — API bisa down kapan aja. Pastikan app tetap jalan dan user dikasih pesan yang jelas
  3. Log everything — Simpan log request/response API buat debugging
  4. Baca rate limit — Jangan sampai kena block karena request berlebihan
  5. Siapkan fallback — Misal payment gateway utama down, ada backup gateway lain

Kesimpulan

Integrasi API itu seperti teka-teki — kadang frustrating, tapi selalu ada kepuasan tersendiri pas akhirnya nyambung. Kuncinya: sabar, baca dokumentasi bener-bener, dan jangan sungkan kontak support.

"API integration is 10% coding and 90% reading documentation."