RESTful API  ·  AI-Powered  ·  Built for Nigeria

Add AI bill payments
to your platform.

One API to power airtime, data, transfers, and cable TV with natural language AI. Ship in hours, not months.

Get Your API Key View API Docs
chat-request.sh
// Send a natural language message to BillsGPT POST /api/v1/chat { "message": "Buy 2GB MTN data for 08012345678", "session_id": "sess_abc123" } // BillsGPT understands intent & executes → 200 OK { "reply": "✅ Done! 2GB MTN data purchased for 08012345678.", "transaction_id": "txn_9f72k1", "amount": 500, "status": "completed" }
25+
API Endpoints
<200ms
Avg Response
99.9%
Uptime SLA
100+
Banks Supported
Platform Features

Everything you need to launch.

From AI chat to direct bill payment — one integration covers it all.

🧠

AI Chat API

Send natural language messages. Our AI detects intent, extracts parameters, and executes transactions — zero parsing on your end.

🔧

Direct Bill Endpoints

Prefer structured calls? Use our direct endpoints for airtime, data, transfers, and cable with explicit parameters.

📸

Vision / OCR Support

Upload images of bank details or receipts. Our AI extracts account numbers, amounts, and bank names automatically.

💰

Wallet System

Built-in wallet with virtual bank account generation, real-time funding, and PIN-protected transactions.

🔐

Enterprise Security

API key encryption, rate limiting, HTTPS only, request signing, and detailed audit logs for every transaction.

📊

Webhooks & Analytics

Real-time transaction webhooks, monthly usage reports, and a developer dashboard to monitor everything.

Clean, RESTful endpoints.

Consistent JSON responses, Bearer token auth, and comprehensive error codes.

POST /api/v1/chat AI chat message
POST /api/v1/bill/airtime Purchase airtime
POST /api/v1/bill/data Buy data bundle
POST /api/v1/bill/transfer/verify Verify bank account
POST /api/v1/bill/transfer/send Send money
GET /api/v1/bill/cable/providers List cable providers
POST /api/v1/bill/cable/subscribe Subscribe cable TV
POST /api/v1/auth/register Register account
POST /api/v1/auth/login Get auth token
POST /api/v1/subscription/renew Renew subscription

How the chat flow works.

This is the exact same mechanism the BillsGPT mobile app uses. Follow this flow for safe, reliable transactions.

1

User sends a message

Your user types a natural language request. Send it to the Chat API with a session_id to maintain conversation context.

POST /api/v1/chat Authorization: Bearer chat_YOUR_API_KEY { "message": "Buy 2GB MTN data for 08012345678", "session_id": "optional-uuid-or-string" }
2

AI detects intent & asks for confirmation

The AI extracts entities (network, amount, phone) and returns a summary. Check requires_confirmation: true — this means the AI is asking the user to confirm before executing.

→ 200 OK { "success": true, "data": { "message": "📱 **Data Purchase Summary**\n\nNetwork: MTN\nPlan: 2GB\nPhone: 08012345678\nAmount: ₦500\n\nReply **Yes** to proceed or **No** to cancel.", "intent": "buy_data", "entities": { "network": "mtn", "phone": "08012345678", "amount": 500 }, "session_id": "abc-123-def", "requires_confirmation": true, "transaction_status": null } }
3

User confirms — send "yes" with same session_id

When the user confirms, send "yes" (or "confirm", "ok", "proceed") using the same session_id. The AI remembers the pending transaction and executes it.

POST /api/v1/chat { "message": "yes", "session_id": "abc-123-def" }
4

Transaction executed — check transaction_status

The AI executes the transaction via UnityBills and returns the result. Check transaction_status for the outcome.

→ 200 OK { "success": true, "data": { "message": "✅ Done! 2GB MTN data purchased for 08012345678.", "intent": "buy_data", "session_id": "abc-123-def", "transaction_status": "completed", "requires_confirmation": false } }

⚡ Safety Mechanisms (Built-In)

🔒 Race Condition Guard

If the same user sends "yes" twice simultaneously, only one transaction executes. The second returns a "still processing" response.

🧠 Confirmation Required

The AI NEVER executes a transaction without asking for confirmation first. Always check requires_confirmation in the response.

📑 Session Context

Always pass session_id from previous responses. This maintains conversation history so the AI knows what transaction is pending.

🛡️ Your Responsibility

Add your own PIN/OTP verification, balance checks, and user authentication before sending the "yes" confirmation to our API.

💡 Recommended Implementation (Your Backend)

// Your backend pseudocode — same pattern as the BillsGPT app function handleUserMessage(userMessage, sessionId) { // 1. Send to BillsGPT Chat API response = POST("/api/v1/chat", { message: userMessage, session_id: sessionId }) // 2. If AI asks for confirmation, show to user but DON'T auto-confirm if (response.data.requires_confirmation) { showConfirmationDialog(response.data.message) return // Wait for user to manually confirm } // 3. When user clicks "Confirm" in YOUR app: // a. Verify user's PIN/OTP on YOUR side // b. Check user's balance on YOUR side // c. THEN send "yes" to BillsGPT if (userClickedConfirm) { verifyPin(user) checkBalance(user, response.data.entities.amount) result = POST("/api/v1/chat", { message: "yes", session_id: sessionId }) if (result.data.transaction_status === "completed") { debitUser(user, amount) showSuccess(result.data.message) } } }
Use Cases

Built for builders.

See how teams integrate BillsGPT into their products.

🏦

Fintech Apps

Add AI-powered bill payments to your fintech app. Users chat to pay instead of navigating forms.

💬

Chatbots & Assistants

Plug BillsGPT into your WhatsApp, Telegram, or custom chatbot for conversational payments.

🛒

E-Commerce Platforms

Let customers buy airtime, data, or pay bills directly from your marketplace.

🏢

Corporate Portals

Automate recurring bill payments for employees — data plans, airtime allowances, cable subscriptions.

Simple, transparent pricing.

Start free. Scale when ready.

Starter
Free
Perfect to explore the API
  • 100 API calls / month
  • AI Chat endpoint
  • All bill payment endpoints
  • Test environment
  • Community support
Start Free
Enterprise
Custom
For large-scale operations
  • Everything in Pro
  • Dedicated infrastructure
  • Custom SLA & uptime
  • White-label option
  • Dedicated account manager
  • On-premise deployment
Contact Sales

Ship AI payments today.

Get your API key in 30 seconds. No credit card required.

Create Free Account Read the Docs