API Documentation

Dokumentasi teknis integrasi InvoiceKu. Gunakan API ini untuk membuat tagihan otomatis dari aplikasi Anda.

BASE URL

https://invoiceku.net/api/v1

API v1 memakai API key global yang ada di halaman Pengaturan. Untuk integrasi baru, gunakan API v2 yang memakai API key per project.

Authentication

Semua request wajib menyertakan Authorization Header.
API Key bisa didapatkan di menu Settings > Developer.

Authorization: Bearer ik_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Contoh response

HTTP/1.1 200 OK
Content-Type: application/json

{
  "status": "success",
  "data": {
    "invoice_id": "INV-D1E4-7586",
    "status": "paid",
    "amount_total": 100000
  }
}

Create Invoice (Instant QRIS)

POST /invoice

Gunakan endpoint ini untuk membuat tagihan baru dan mendapatkan kode QRIS secara instan.

Contoh cURL

curl -X POST https://invoiceku.net/api/v1/invoice \
  -H "Authorization: Bearer ik_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "amount": 50000,
    "item_name": "Premium Upgrade",
    "customer_name": "John Doe",
    "email": "customer@example.com" 
  }'

Success Response

{
  "status": "success",
  "data": {
    "invoice_id": "INV-D1E4-7586",
    "amount_original": 50000,
    "amount_total": 50123,
    "status": "pending",
    "qris_string": "00020101021226590013ID...",
    "qris_image_url": "https://invoiceku.net/qris/INV-D1E4-7586.png",
    "payment_url": "https://invoiceku.net/invoice/INV-D1E4-7586",
    "expired_at": "2026-01-28 14:00:00"
  }
}

Cek Status Pembayaran

GET /invoice/{invoice_id}

Contoh cURL

curl -X GET https://invoiceku.net/api/v1/invoice/INV-D1E4-7586 \
  -H "Authorization: Bearer ik_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

Success Response

{
  "status": "success",
  "data": {
    "invoice_id": "INV-D1E4-7586",
    "order_id": "ORD-2024-001",
    "status": "paid",
    "amount_total": 50123,
    "paid_at": "2026-01-28 13:40:14"
  }
}

Cancel Invoice

POST /invoice/{invoice_id}/cancel

Membatalkan invoice yang masih pending (misal: user membatalkan pesanan).

Contoh cURL

curl -X POST https://invoiceku.net/api/v1/invoice/INV-D1E4-7586/cancel \
  -H "Authorization: Bearer ik_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

Success Response

{
  "status": "success",
  "message": "Invoice cancelled successfully",
  "data": {
    "invoice_id": "INV-D1E4-7586",
    "status": "failed"
  }
}

Error Codes

Code Description
401 API Key salah / tidak ada Authorization header.
404 Invoice ID tidak ditemukan.
503 Gagal request ke Bank (Coba lagi).