Dokumentasi API

Selamat datang di dokumentasi resmi Fandirr Pay API. Layanan ini memungkinkan Anda membuat sistem pembayaran otomatis (QRIS Instant) untuk aplikasi atau website Anda.

Base URL

https://www.fandirr.store/api/payment

Autentikasi

Setiap permintaan wajib menyertakan parameter apikey. Jaga kerahasiaan kunci ini.

apikey=LOGIN_UNTUK_LIHAT_KEY

1. Buat Pembayaran (Deposit)

Endpoint ini digunakan untuk membuat tagihan baru (QRIS). Sistem akan mengembalikan URL QR Code dan data transaksi.

POST https://www.fandirr.store/api/payment/deposit

Parameter Header

KeyValueWajib?
Content-Type application/json Ya

Parameter Body (JSON)

FieldTipeDeskripsi
amount Number Jumlah deposit (Min. 500). Contoh: 1000
fee Number Biaya admin tambahan (Opsional). Contoh: 150

Contoh Request

curl -X POST 'https://www.fandirr.store/api/payment/deposit?apikey=LOGIN_UNTUK_LIHAT_KEY' \
-H 'Content-Type: application/json' \
-d '{
    "amount": "1000",
    "fee": "150"
}'

Respon Sukses (200 OK)

{
  "status": "success",
  "message": "Permintaan deposit berhasil dibuat.",
  "data": {
    "orderId": "ORD-54af-1762872744352",
    "baseAmount": 1000,
    "adminFee": 150,
    "uniqueCode": 59,
    "amountToPay": 1209,
    "qrCodeUrl": "https://www.fandirr.store/public/qris/demo.png",
    "expiryTime": "2025-11-11T21:57:24.346+07:00"
  }
}

2. Cek Status (Polling)

Gunakan endpoint ini untuk mengecek status pembayaran secara berkala (Realtime). Lakukan request setiap 10-30 detik.

⚠️ Wajib menyertakan API Key.

GET https://www.fandirr.store/api/payment/status/{orderId}?apikey=...

Contoh Request

curl -X GET 'https://www.fandirr.store/api/payment/status/ORD-12345?apikey=LOGIN_UNTUK_LIHAT_KEY'

Respon: Lunas (Settlement)

{
  "_id": "6729c1d0f1a...",
  "orderId": "ORD-54af-1762254576493",
  "status": "settlement",
  "amount": 1273,
  "mutationId": "180027946",
  "paymentId": "QR-Z8L8I61O",
  "updatedAt": "2025-11-04T11:10:05.120Z"
}

Respon: Menunggu (Pending)

{
  "orderId": "ORD-54af-1762254576493",
  "status": "pending",
  "updatedAt": "2025-11-04T11:09:36.500Z"
}

3. Update Status (Cancel/Expire)

Endpoint ini berguna jika User membatalkan pembayaran di frontend Anda, atau timer waktu habis.

⚠️ Wajib menyertakan API Key.

POST https://www.fandirr.store/api/payment/update-status?apikey=...

Parameter Body (JSON)

FieldTipeDeskripsi
orderId String ID Order yang didapat saat membuat deposit.
newStatus String Pilih: cancel atau expire

Contoh Request

curl -X POST 'https://www.fandirr.store/api/payment/update-status?apikey=LOGIN_UNTUK_LIHAT_KEY' \
-H 'Content-Type: application/json' \
-d '{
    "orderId": "ORD-12345",
    "newStatus": "cancel"
}'