রেজিস্ট্রেশন
বিল পেমেন্ট API ডকুমেন্টেশন

বিল পেমেন্ট API ব্যবহারের সম্পূর্ণ বাংলা গাইড

এই API ব্যবহার করে provider list দেখা, provider অনুযায়ী service list দেখা, প্রয়োজনীয় field জেনে bill payment submit করা এবং order number দিয়ে status check করা যাবে। প্রতিটি request-এ api_key, api_secret এবং action পাঠাতে হবে।

রিফিলো

Bill Payment API ডেভেলপার ডকুমেন্টেশন

অ্যাকশন: providers, services, submit, status_check
অথেনটিকেশন: প্রতিটি request-এ api_key এবং api_secret প্রয়োজন।
স্ট্যাটাস: pending, success, failed
টোকেন নাম্বার: status success হলে token_number পাওয়া যাবে।

API এন্ডপয়েন্ট

নিচের endpoint-এ request পাঠিয়ে Bill Payment API ব্যবহার করতে হবে।

POST / GET
https://refillo.top/api/bill-payment
একই endpoint-এ ভিন্ন action ব্যবহার করে আলাদা কাজ সম্পন্ন করা যাবে।

অ্যাকশনসমূহ

এই API-তে মোট ৪টি action রয়েছে।

১. providers

সব available provider-এর তালিকা দেখাবে।

২. services

নির্দিষ্ট provider-এর service list এবং required input fields দেখাবে।

৩. submit

নির্দিষ্ট service অনুযায়ী প্রয়োজনীয় তথ্য ও amount পাঠিয়ে bill payment request submit করা যাবে।

৪. status_check

order_number ব্যবহার করে পূর্বের request-এর বর্তমান অবস্থা জানা যাবে।

রিকোয়েস্ট প্যারামিটার

প্রতিটি action অনুযায়ী প্রয়োজনীয় প্যারামিটার নিচে দেওয়া হলো।

ফিল্ড আবশ্যক ব্যবহার বর্ণনা
api_key হ্যাঁ সব action API key
api_secret হ্যাঁ সব action API secret
action হ্যাঁ সব action providers, services, submit, status_check
provider_id হ্যাঁ services, submit Provider id
service_id হ্যাঁ submit Service id
amount হ্যাঁ submit Bill amount
order_number হ্যাঁ status_check Submit action-এ পাওয়া order number

ইনপুট ফিল্ড

service অনুযায়ী submit action-এ প্রয়োজনীয় field পরিবর্তন হতে পারে। তাই submit করার আগে services action call করে required input list দেখে নিতে হবে।

উদাহরণ প্রয়োজনীয় ইনপুট
Meter bill service meter_number, contact_number
Customer bill service customer_id, contact_number
Monthly bill service bill_year, bill_month এবং service অনুযায়ী অন্যান্য field
গুরুত্বপূর্ণ: submit করার আগে services action-এর response থেকে required field দেখে নিতে হবে।

providers উদাহরণ

সব provider list দেখতে এই request পাঠান।

providers
curl -X POST "https://refillo.top/api/bill-payment" \
-H "Accept: application/json" \
-d "api_key=YOUR_API_KEY" \
-d "api_secret=YOUR_API_SECRET" \
-d "action=providers"

services উদাহরণ

নির্দিষ্ট provider-এর service list দেখতে এই request পাঠান।

services
curl -X POST "https://refillo.top/api/bill-payment" \
-H "Accept: application/json" \
-d "api_key=YOUR_API_KEY" \
-d "api_secret=YOUR_API_SECRET" \
-d "action=services" \
-d "provider_id=1"

submit উদাহরণ

service অনুযায়ী প্রয়োজনীয় field, provider_id, service_id এবং amount পাঠিয়ে request submit করুন।

submit
curl -X POST "https://refillo.top/api/bill-payment" \
-H "Accept: application/json" \
-d "api_key=YOUR_API_KEY" \
-d "api_secret=YOUR_API_SECRET" \
-d "action=submit" \
-d "provider_id=1" \
-d "service_id=2" \
-d "amount=450" \
-d "meter_number=123456789" \
-d "contact_number=017XXXXXXXX"

status_check উদাহরণ

submit করার পর পাওয়া order_number দিয়ে status check করা যাবে।

status_check
curl -X POST "https://refillo.top/api/bill-payment" \
-H "Accept: application/json" \
-d "api_key=YOUR_API_KEY" \
-d "api_secret=YOUR_API_SECRET" \
-d "action=status_check" \
-d "order_number=BILL20260411153030ABC123"

সফল রেসপন্স উদাহরণ

বিভিন্ন action সফল হলে নিচের মতো response পাওয়া যেতে পারে।

১. providers সফল রেসপন্স
providers success
{
  "status": true,
  "message": "Bill provider তালিকা সফলভাবে পাওয়া গেছে।",
  "user": {
    "name": "Demo User",
    "balance": 2500
  },
  "total": 2,
  "data": [
    {
      "id": 1,
      "name": "DESCO"
    },
    {
      "id": 2,
      "name": "WASA"
    }
  ]
}
২. services সফল রেসপন্স
services success
{
  "status": true,
  "message": "Bill service তালিকা সফলভাবে পাওয়া গেছে।",
  "provider": {
    "id": 1,
    "name": "DESCO"
  },
  "data": [
    {
      "id": 2,
      "name": "Prepaid Meter Bill",
      "required_inputs": [
        {
          "name": "meter_number",
          "label": "Meter Number",
          "type": "text",
          "required": true
        },
        {
          "name": "contact_number",
          "label": "Contact Number",
          "type": "text",
          "required": true
        }
      ]
    }
  ]
}
৩. submit সফল রেসপন্স
submit success
{
  "status": true,
  "message": "Bill payment request সফলভাবে গ্রহণ করা হয়েছে।",
  "data": {
    "order_number": "BILL20260411153030ABC123",
    "amount": 450,
    "status": "pending",
    "token_number": null
  }
}
৪. status_check সফল রেসপন্স
status_check success
{
  "status": true,
  "message": "Bill payment status সফলভাবে পাওয়া গেছে।",
  "data": {
    "order_number": "BILL20260411153030ABC123",
    "amount": 450,
    "status": "success",
    "token_number": "TOKEN998877"
  }
}
নোট: status pending থাকলে token_number null থাকতে পারে। status success হলে token number পাওয়া যাবে।

ত্রুটি রেসপন্স উদাহরণ

request-এ ভুল থাকলে বা তথ্য পাওয়া না গেলে নিচের মতো response আসতে পারে।

১. API credentials ভুল
Invalid credentials
{
  "status": false,
  "message": "অবৈধ API credentials।"
}
২. action দেওয়া হয়নি
Missing action
{
  "status": false,
  "message": "action প্রয়োজন।"
}
৩. provider পাওয়া যায়নি
Provider not found
{
  "status": false,
  "message": "নির্বাচিত provider পাওয়া যায়নি।"
}
৪. service পাওয়া যায়নি
Service not found
{
  "status": false,
  "message": "নির্বাচিত service পাওয়া যায়নি।"
}
৫. প্রয়োজনীয় তথ্য সঠিক নয়
Validation error
{
  "status": false,
  "message": "প্রয়োজনীয় তথ্য সঠিকভাবে প্রদান করা হয়নি।"
}
৬. পর্যাপ্ত ব্যালেন্স নেই
Insufficient balance
{
  "status": false,
  "message": "পর্যাপ্ত ব্যালেন্স নেই।"
}
৭. order number পাওয়া যায়নি
Order not found
{
  "status": false,
  "message": "Transaction পাওয়া যায়নি।"
}
গুরুত্বপূর্ণ: request পাঠানোর আগে api_key, api_secret, action এবং action অনুযায়ী প্রয়োজনীয় field সঠিকভাবে পাঠানো হয়েছে কিনা নিশ্চিত করুন।