LumiID API Docs

Wallet API

The Wallet API enables you to manage your LumiID account balance, fund your wallet, and track all your transactions programmatically. This helps you integrate LumiID verification services seamlessly into your applications while maintaining full financial control.

Base URL

https://lumiid.com/api/wallet/

1. Check Wallet Balance

GET /balance

Retrieve the current available balance in your LumiID wallet.

Headers:

Authorization: Bearer <your_api_key>
        

Response (200):

{
  "status": "success",
  "balance": 15000.50,
  "currency": "NGN",
  "last_updated": "2025-11-01T10:45:00Z"
}
      

Error (401):

{
  "status": "error",
  "message": "Invalid or expired API key."
}
      

2. Fund Wallet

POST /fund

Fund your LumiID wallet through Paystack or other supported payment channels. The API returns a payment link or transaction details to complete the funding process.

Headers:

Authorization: Bearer <your_api_key>
Content-Type: application/json
      

Request Body:

{
  "amount": 5000,
  "channel": "paystack",
  "callback_url": "https://yourapp.com/payment/callback"
}
      

Response (200):

{
  "status": "success",
  "payment_reference": "TXN_98273782",
  "authorization_url": "https://checkout.paystack.com/txn_98273782",
  "amount": 5000,
  "currency": "NGN"
}
      

Error (400):

{
  "status": "error",
  "message": "Invalid amount or unsupported payment channel."
}
      

3. Transaction History

GET /transactions

Retrieve a list of your wallet transactions — both successful and pending — with pagination support.

Headers:

Authorization: Bearer <your_api_key>
      

Optional Query Parameters:

?page=1
?limit=10
?status=success
      

Response (200):

{
  "status": "success",
  "data": [
    {
      "id": "TXN_98273782",
      "amount": 5000,
      "type": "credit",
      "status": "success",
      "channel": "paystack",
      "date": "2025-10-30T12:32:00Z"
    },
    {
      "id": "TXN_67384729",
      "amount": 2500,
      "type": "debit",
      "status": "success",
      "channel": "nin_verification",
      "date": "2025-10-31T09:10:00Z"
    }
  ],
  "pagination": {
    "page": 1,
    "limit": 10,
    "total": 2
  }
}
      

Example Integration

Python Example

import requests

url = "https://lumiid.com/api/wallet/balance"
headers = {"Authorization": "Bearer YOUR_API_KEY"}

response = requests.get(url, headers=headers)
print(response.json())
    

JavaScript Example

fetch("https://lumiid.com/api/wallet/fund", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    amount: 5000,
    channel: "paystack",
    callback_url: "https://yourapp.com/payment/callback"
  })
})
  .then(response => response.json())
  .then(data => console.log(data))
  .catch(error => console.error(error));
    

Note

  • Your wallet must have a positive balance to perform API verifications.
  • All transactions are logged in your dashboard for transparency and audit.
  • Refunds for failed verifications are processed automatically within 10 minutes.