Malawali Payment Malawali Payment
Bantuan
Documentation
Malawali Payment · REST API v1

Integrasi Pembayaran QRIS

Buat order dari server Anda, tampilkan QR ke pelanggan, lalu terima callback order.paid setelah pembayaran terdeteksi otomatis. API Key dibuat per Project dan hanya aktif selama langganan berjalan.

Base URL http://localhost:3001/api
Autentikasi Header x-api-key: pk_live_…
Format JSON (request & response)
Webhook HMAC-SHA256, retry maksimal 3×, timeout 10 detik

Cek Status

Ambil kondisi order terbaru. Cocokkan juga dengan callback webhook yang Anda terima.

GET /api/orders/:id

GET

Order hanya dapat diakses oleh project yang membuatnya. Project lain akan menerima order_not_found.

curl -X GET http://localhost:3001/api/orders/ord_7f3k9d2m \
  -H "x-api-key: pk_live_xxxxxxxxxxxxxxxxxxxxxxxx"
const res = await fetch("http://localhost:3001/api/orders/ord_7f3k9d2m", {
  headers: { "x-api-key": "pk_live_xxxxxxxxxxxxxxxxxxxxxxxx" },
});
const order = await res.json();
if (order.status === "paid") {
  // kirim produk / aktifkan layanan
}
<?php
$ch = curl_init("http://localhost:3001/api/orders/ord_7f3k9d2m");
curl_setopt_array($ch, [
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_HTTPHEADER => ["x-api-key: pk_live_xxxxxxxxxxxxxxxxxxxxxxxx"],
]);
$order = json_decode(curl_exec($ch), true);
if ($order["status"] === "paid") {
  // aktifkan layanan
}
import requests

order = requests.get(
    "http://localhost:3001/api/orders/ord_7f3k9d2m",
    headers={"x-api-key": "pk_live_xxxxxxxxxxxxxxxxxxxxxxxx"},
    timeout=10,
).json()
if order["status"] == "paid":
    pass  # aktifkan layanan