Dashboard

Memulai

AutoGopay adalah Payment API Gateway mandiri yang menghubungkan aplikasi Anda langsung ke akun GoPay Merchant pribadi. Semua transaksi diproses secara real-time dan dana langsung masuk ke saldo Anda tanpa perantara.

BASE URL

https://autogopay.my.id

Autentikasi

Setiap permintaan API wajib menyertakan API Key. Dapatkan API Key dari halaman API Key di dashboard, lalu kirimkan pada header HTTP dengan salah satu format berikut:

// Format 1 — X-API-Key
X-API-Key: iak_xxxxxx

// Format 2 — Authorization Bearer
Authorization: Bearer iak_xxxxxx

Buat Pembayaran

Membuat tagihan baru. Server mengembalikan kode QRIS dinamis yang siap dipindai pelanggan.

POST https://autogopay.my.id/api/v1/payment/create

Body Parameters (JSON)

Parameter Tipe Wajib Keterangan
amount Number Ya Nominal pembayaran dalam Rupiah (min. 1000)
reference String Tidak ID unik transaksi dari sistem Anda. Kosongkan = digenerate otomatis
description String Tidak Keterangan/catatan pembayaran
customer_name String Tidak Nama pelanggan
callback_url URL Tidak Alamat webhook khusus transaksi ini (mengganti pengaturan global)

CONTOH REQUEST

{
  "amount": 50000,
  "reference": "INV-10291",
  "description": "Beli Kaos Distro",
  "customer_name": "Anto"
}

CONTOH RESPONSE (201 Created)

{
  "success": true,
  "data": {
    "invoice": "INV-20260620-80E2",
    "reference": "INV-10291",
    "amount": 50000,
    "qris_string": "0002010102122657...",
    "qr_image": "https://api.qrserver.com/...",
    "payment_url": "https://autogopay.my.id/payment/status/INV-20260620-80E2",
    "status": "pending",
    "expired_at": "2026-06-21T15:00:07+08:00"
  }
}

Cek Status Pembayaran

Mendapatkan info terkini status transaksi.

GET https://autogopay.my.id/api/v1/payment/status/{reference}

CONTOH RESPONSE (200 OK)

{
  "success": true,
  "data": {
    "invoice": "INV-20260620-80E2",
    "reference": "INV-10291",
    "amount": 50000,
    "status": "success",
    "payment_method": "qris",
    "qris_string": "0002010102122657...",
    "qr_image": "https://api.qrserver.com/...",
    "payment_url": "https://autogopay.my.id/payment/status/INV-20260620-80E2",
    "description": "Beli Kaos Distro",
    "paid_at": "2026-06-20 15:32:01",
    "expired_at": "2026-06-21 15:00:00",
    "created_at": "2026-06-20 15:00:00"
  }
}

Batal Transaksi

Membatalkan tagihan yang masih menunggu. Status berubah menjadi failed.

POST https://autogopay.my.id/api/v1/payment/cancel
Parameter Tipe Wajib Keterangan
reference String Ya* ID unik dari sistem Anda ATAU Invoice AutoGopay (format: INV-xxxx). Wajib isi salah satu.
invoice String Ya* Nomor invoice dari AutoGopay. Isi salah satu — reference ATAU invoice.

CONTOH REQUEST

{
  "reference": "INV-10291"
}

CONTOH RESPONSE (200 OK)

{
  "success": true,
  "message": "Transaksi berhasil dibatalkan",
  "data": {
    "invoice": "INV-20260620-80E2",
    "reference": "INV-10291",
    "status": "failed"
  }
}

Integrasi Webhook

Sistem mengirimkan POST ke alamat yang Anda tentukan secara otomatis saat status transaksi berubah: success, failed, atau expired.

PAYLOAD WEBHOOK

{
  "event": "payment.updated",
  "invoice": "INV-20260620-80E2",
  "reference": "INV-10291",
  "amount": 50000,
  "status": "success",
  "payment_method": "qris",
  "paid_at": "2026-06-20 15:32:01",
  "timestamp": "2026-06-20T15:32:01+07:00",
  "signature": "c8e2fb8a9d0e12..."
}

Verifikasi Signature

Pastikan kiriman benar dari AutoGopay — tidak dipalsukan. Signature dihitung dengan algoritma HMAC-SHA256 menggunakan Secret Key sebagai kunci, dari seluruh isi payload (tanpa parameter signature).

CONTOH VERIFIKASI — PHP

$data = json_decode(file_get_contents('php://input'), true);
$signature = $data['signature'] ?? '';
unset($data['signature']);

$expected = hash_hmac('sha256', json_encode($data), $webhookSecret);

if (hash_equals($expected, $signature)) {
  // Kiriman sah — proses pembayaran
}

Kode Error

Format respons saat terjadi kesalahan:

{
  "success": false,
  "message": "Pesan deskripsi kesalahan"
}
HTTP Code Keterangan
400 Validasi input gagal — nominal tidak valid, parameter kurang/salah format
401 API Key tidak sah, kadaluwarsa, atau tidak dikirim
403 Akun belum aktif / tidak punya izin akses
404 Transaksi tidak ditemukan — invoice/reference salah