REST API

Dokumentasi API Developer

Integrasikan ribuan produk PPOB ke aplikasi Anda menggunakan REST API kami yang sederhana, cepat, dan aman.

Pengantar

Selamat datang di dokumentasi API AuraPay. API kami menggunakan standar RESTful dan mengirimkan data dalam format JSON. Semua request yang memerlukan autentikasi harus menyertakan Bearer Token di header.

Base URL Production

https://domain-anda.com/api

JSON

Format Response

Bearer

Auth Method

HTTPS

Protocol

Authentication

POST /login

Autentikasi user dan dapatkan Bearer Token.

{
  "email": "user@example.com",
  "password": "password123"
}

RESPONSE 200

{
  "status": "success",
  "access_token": "2|ABC123...",
  "token_type": "Bearer",
  "user": { "id": 1, "name": "Budi", "email": "user@example.com" }
}

Profil User

GET /profile Auth Required
GET /api/profile
Authorization: Bearer {token}
Accept: application/json

RESPONSE 200

{
  "user": {
    "id": 1, "name": "Budi", "email": "user@example.com",
    "balance": 150000, "kyc_status": "approved"
  }
}

Saldo & Wallet

GET /wallet Auth Required

RESPONSE 200

{
  "status": "success",
  "data": {
    "balance": 1250000,
    "currency": "IDR",
    "last_updated": "2026-04-25T06:00:00"
  }
}

Daftar Produk

GET /products?category_id={id} Auth Required

RESPONSE 200

{
  "status": "success",
  "data": [
    {
      "buyer_sku_code": "xld10",
      "product_name": "XL 10.000",
      "price": 11000,
      "category": "Pulsa"
    }
  ]
}

Buat Transaksi

POST /checkout Auth Required

REQUEST BODY

{
  "buyer_sku_code": "xld10",
  "customer_no": "08123456789"
}

RESPONSE 200

{
  "status": "success",
  "data": {
    "ref_id": "TRX202604250001",
    "status": "Sukses",
    "sn": "SN-123456",
    "price": 11000
  }
}

Transfer Saldo

POST /transfer/user Transfer Antar Member
{
  "phone": "08123456789",
  "nominal": 50000,
  "notes": "Bayar hutang"
}
POST /transfer/bank Coming Soon
{
  "rekening": "1234567890",
  "nominal": 100000
}

Keamanan PIN

POST /pin/setup Set atau update PIN
{ "pin": "123456" }
POST /pin/verify Validasi PIN sebelum transaksi
{ "pin": "123456" }

RESPONSE 200 (Valid)

{ "status": "success", "message": "PIN valid." }

RESPONSE 400 (Salah)

{ "status": "error", "message": "PIN yang Anda masukkan salah." }

KYC Verifikasi

User harus diverifikasi (KYC) sebelum dapat menggunakan fitur Transfer. Kirimkan data identitas menggunakan endpoint berikut.

POST /kyc/submit multipart/form-data

REQUEST FIELDS

nik        : "3201234567890001"  (required, 16 digit)
full_name  : "Budi Santoso"      (required)
address    : "Jl. Merdeka No. 1" (required)
ktp_image  : [file jpeg/png]     (required, max 2MB)
Status: pending — menunggu review admin
Status: approved — fitur transfer terbuka

Kode Error Umum

Kode Deskripsi
200 Request berhasil
400 Bad request — validasi gagal atau data tidak valid
401 Unauthorized — token tidak valid atau kadaluarsa
403 Forbidden — akun belum KYC atau tidak punya akses
404 Not found — resource tidak ditemukan
500 Server error — hubungi support kami