بابَرکت API Docs
API v1
● مستندات رسمی API

API های بابَرکت

با استفاده از API های بابَرکت می‌توانید خرید شارژ، بسته‌های اینترنت، ارسال پیامک و واتساپ و پیگیری تراکنش‌ها را به سادگی در سرویس خود پیاده‌سازی کنید.

9+ Endpoint
REST API ساختار ارتباط
JSON فرمت پاسخ

شروع کار با API

برای استفاده از API های بابَرکت ابتدا باید در سامانه ثبت‌نام کرده و اطلاعات دسترسی خود را دریافت کنید.

هدر مورد نیاز در درخواست‌ها: Authorization: Bearer YOUR_TOKEN
💡
مقدار توکن پس از ثبت‌نام در اختیار شما قرار می‌گیرد. توکن را در URL ارسال نکنید و آن را محرمانه نگه دارید.
01

دریافت اطلاعات پروفایل

دریافت اطلاعات حساب، موجودی و کلید اختصاصی

GET
https://pay.babarkat.com/user/info

این درخواست اطلاعات حساب شما شامل نام، موبایل، کلید اختصاصی و موجودی کیف پول را برمی‌گرداند.

JSON
{
  "data": {
    "name": "نام",
    "last_name": "نام خانوادگی",
    "description": "",
    "mobile": "09***",
    "appKey": "xxxxxxxxxxxxxxxxxxxxxx",
    "toman": 10000
  },
  "success": true
}
پارامتر توضیح
name نام کاربر
last_name نام خانوادگی
mobile شماره موبایل ثبت‌شده
appKey کلید اختصاصی برای انجام تراکنش‌ها
toman موجودی کیف پول به تومان
02

خرید شارژ

ثبت تراکنش خرید شارژ سیم‌کارت

POST
https://pay.babarkat.com/transaction/charge/add

این متد برای خرید شارژ خطوط تلفن همراه استفاده می‌شود.

MTN — ایرانسل MCI — همراه اول RTL — رایتل SHT — شاتل aptel — اپتل

پارامترهای ورودی

پارامتر نوع توضیح
appKey string کلید اختصاصی دریافت‌شده از پروفایل
type string MTN، MCI، RTL یا SHT
mobile string شماره موبایل دریافت‌کننده
value number مبلغ شارژ به تومان
otherData object اطلاعات دلخواه برای لاگ و پیگیری
JSON
{
  "appKey": "کلید اختصاصی شما",
  "type": "MTN",
  "mobile": "09*****",
  "value": 5000,
  "otherData": {
    "test": "545454545",
    "array": [
      "aaa"
    ]
  }
}

پاسخ موفق

JSON
{
  "data": {
    "message": "خرید با موفقیت انجام شد",
    "id": 1,
    "otherData": {
      "test": "545454545",
      "array": ["aaa"]
    },
    "charge": {
      "success": true,
      "trackingId": 10,
      "ref_id": 2,
      "message": "خرید موفق بود",
      "code": 1
    }
  },
  "success": true
}
✕
در صورت بروز خطا، فیلد success برابر false خواهد بود و پیام خطا در data.message قرار می‌گیرد.
JSON
{
  "data": {
    "message":
      "مبلغ برای اپراتور MTN باید بین 1000 تا 200000 تومان باشد."
  },
  "success": false
}
03

خرید شارژ افغانستان

خرید شارژ از موجودی افغانی

POST
https://pay.babarkat.com/transaction/charge/afghanistan/add

برای خرید شارژ خطوط افغانستان استفاده می‌شود و مبلغ از موجودی افغانی شما کسر خواهد شد.

JSON
{
  "appKey": "کلید اختصاصی شما",
  "mobile": "09*****",
  "value": 100,
  "otherData": {
    "test": "545454545",
    "array": ["aaa"]
  }
}
!
مبلغ شارژ به افغانی محاسبه می‌شود. محدوده نمونه ارائه‌شده ۵۰ تا ۴۰۰۰ افغانی است.

پاسخ موفق

JSON
{
  "data": {
    "message": "خرید با موفقیت انجام شد",
    "id": 1,
    "otherData": {
      "test": "545454545",
      "array": ["aaa"]
    },
    "charge": {
      "success": true,
      "code": 1
    }
  },
  "success": true
}
04

دریافت لیست بسته‌های اینترنت

دریافت بسته‌های فعال اپراتورهای مختلف

POST
https://pay.babarkat.com/transaction/internet/list

دریافت لیست کامل بسته‌های اینترنت فعال از ایرانسل، همراه اول، رایتل و شاتل.

Body

JSON
{
  "appKey": "کلید اختصاصی شما"
}

پاسخ موفق

JSON
{
  "success": true,
  "data": {
    "list": [
      {
        "table_id": "19357",
        "product_type": "internet",
        "operator": "SHT",
        "name": "2 ساعته - 4 گیگابایت",
        "product_id": "854",
        "gross_price": 12000,
        "amount": 13200,
        "periodicity": "hourly",
        "days": "0",
        "volume": "4",
        "unit": "GB",
        "sim_type": "credit",
        "course": "full-time",
        "type": "معمولی",
        "amount_rial": 132000,
        "gross_price_rial": 120000,
        "internet_type": "hourly"
      }
    ]
  }
}
05

خرید بسته اینترنت

خرید بسته اینترنت برای شماره موبایل

POST
https://pay.babarkat.com/transaction/internet/add

با استفاده از شناسه بسته دریافت‌شده از API لیست بسته‌ها، می‌توانید بسته اینترنت موردنظر را خریداری کنید.

پارامتر توضیح
appKey کلید اختصاصی دریافت‌شده از پروفایل
type MTN، MCI، RTL، SHT
mobile شماره موبایل دریافت‌کننده
internet_type hourly، daily، monthly، TDLTE و...
sim_type credit یا permanent
product_id شناسه بسته اینترنت
otherData اطلاعات دلخواه برای پیگیری
JSON
{
  "appKey": "xxxxxxxxx",
  "type": "MTN",
  "mobile": "09*****",
  "internet_type": "hourly",
  "sim_type": "credit",
  "product_id": "854",
  "otherData": {
    "order_id": "123456"
  }
}

پاسخ موفق

JSON
{
  "success": true,
  "data": {
    "message": "خرید با موفقیت انجام شد",
    "id": 123,
    "otherData": {
      "order_id": "123456"
    },
    "charge": {
      "success": true,
      "trackingId": 987654,
      "ref_id": 112233,
      "message": "خرید موفق بود",
      "code": 1
    }
  }
}
✕
در صورت کافی نبودن موجودی، درخواست با success: false پاسخ داده می‌شود.
06

بسته اینترنت افغانستان

دریافت لیست بسته‌ها و خرید بسته اینترنت اپراتورهای افغانستان

ℹ
مبلغ بسته‌ها به افغانی (AFN) است و از موجودی افغانی حساب شما کسر می‌شود. برای خرید، همیشه از آخرین لیست بسته‌ها استفاده کنید.
POST
https://pay.babarkat.com/transaction/internet/afghanistan/list

۱. دریافت لیست بسته‌ها

لیست بسته‌های اینترنت اپراتور انتخاب‌شده را دریافت می‌کند. لیست در سمت سرویس کش می‌شود و هر ۱۲ ساعت یک‌بار به‌روزرسانی می‌شود.

پارامترنوعتوضیح
appKeystringکلید اپلیکیشن؛ همان کلید مورد استفاده برای شارژ افغانستان
typestringاپراتور: etisalat، atoma، roshan، awcc یا salam
etisalat — اتصالات atoma — آتوماتا roshan — روشن awcc — افغان وایرلس salam — سلام

Body

JSON
{
  "appKey": "YOUR_APP_KEY",
  "type": "etisalat"
}

پاسخ موفق

JSON
{
  "success": true,
  "data": {
    "list": [
      {
        "id": 1,
        "type": "etisalat",
        "package_id": 12,
        "name": "550 MB هفته وار",
        "amount": 56,
        "validity": "Weekly",
        "last_updated_at": "2026-10-08 10:00:00"
      }
    ]
  }
}
فیلدتوضیح
idشناسه داخلی رکورد در لیست
package_idشناسه بسته برای خرید؛ در درخواست خرید از این فیلد استفاده کنید
nameنام بسته
amountقیمت بسته به افغانی (AFN)
validityمدت اعتبار بسته
last_updated_atزمان آخرین به‌روزرسانی اطلاعات بسته
!
بسته‌ها را هاردکد نکنید. نام، قیمت و شناسه‌ها ممکن است تغییر کنند. برای خرید فقط از package_id استفاده کنید، نه id. خرید فقط برای بسته‌های موجود در لیست امکان‌پذیر است.
POST
https://pay.babarkat.com/transaction/internet/afghanistan/add

۲. خرید بسته اینترنت

برای خرید، شماره موبایل افغانستان و شناسه package_id را از آخرین لیست بسته‌ها ارسال کنید.

پارامترنوعالزامیتوضیح
appKeystringبلهکلید اپلیکیشن
package_idnumberبلهشناسه بسته از لیست، نه فیلد id
mobilestringبلهشماره موبایل گیرنده در افغانستان
otherDataobjectخیراطلاعات دلخواه برای ذخیره و پیگیری تراکنش
tableIdnumberخیرشناسه دلخواه جهت ذخیره کنار تراکنش

Body

JSON
{
  "appKey": "YOUR_APP_KEY",
  "package_id": 12,
  "mobile": "07821234567",
  "otherData": {
    "order_id": "123"
  },
  "tableId": 55
}

پاسخ موفق

JSON
{
  "success": true,
  "data": {
    "id": 12345,
    "message": "خرید با موفقیت انجام شد",
    "otherData": {
      "order_id": "123"
    },
    "charge": {
      "success": true,
      "code": "1",
      "trackingId": "REF-9f8e7d..."
    }
  }
}
فیلدتوضیح
data.idشناسه تراکنش در سامانه بابَرکت؛ برای پیگیری نگه دارید
data.charge.codeمقدار رشته‌ای "1" به معنی خرید موفق است
data.charge.trackingIdکد رهگیری اپراتور
✓
در خرید موفق، مبلغ بسته از موجودی افغانی حساب شما کسر می‌شود.

پاسخ ناموفق

JSON
{
  "success": false,
  "data": {
    "message": "موجودی شما کافی نیست"
  }
}

پیام‌های خطا

پیامتوضیح
appKey نامعتبرکلید اپلیکیشن معتبر نیست
امکان خرید برای شما ممکن نیستدسترسی خرید برای حساب فعال نیست
پکیج یافت نشد - لیست بسته‌ها را بگیریدبسته در لیست فعلی وجود ندارد؛ لیست را دوباره دریافت کنید
موجودی شما کافی نیستموجودی افغانی کافی نیست
شماره موبایل معتبر نیستشماره گیرنده معتبر نیست
خرید بسته ناموفقجزئیات اصلی خطا در data.charge.error و پیام اپراتور در data.charge.message قرار دارد
خرید در انتظاروضعیت خرید در انتظار است
!
پاسخ «خرید در انتظار» را معادل خرید موفق در نظر نگیرید. شناسه تراکنش و اطلاعات پاسخ را برای پیگیری نگه دارید.
06

ارسال پیامک OTP

ارسال پیامک با قالب اختصاصی

POST
https://pay.babarkat.com/sms/send/otp

Headers

HTTP Headers
Authorization: xxxxx.xxxxx.xxxx
Content-Type: application/json

Body

JSON
{
  "appKey": "xxxxxxxxx",
  "mobile": "09150000000",
  "template": "tempname",
  "token": "20",
  "token2": "1",
  "token3": "2"
}

پاسخ موفق

JSON
{
  "success": true,
  "data": {
    "message": "پیامک با موفقیت ارسال شد"
  }
}

پاسخ خطا

JSON
{
  "success": false,
  "data": {
    "message": "خطا در ارسال پیامک یا ذخیره اطلاعات"
  }
}
پارامتر وضعیت توضیح
appKey اجباری کلید اختصاصی اپلیکیشن
mobile اجباری شماره گیرنده با 09 یا +98
template اجباری نام قالب پیامک
token اجباری متغیر اول پیامک
token2 اختیاری متغیر دوم پیامک
token3 اختیاری متغیر سوم پیامک
07

ارسال WhatsApp OTP

ارسال پیام واتساپ با قالب اختصاصی

POST
https://pay.babarkat.com/whatsapp/send/by/template

Headers

HTTP Headers
Authorization: xxxxx.xxxxx.xxxx
Content-Type: application/json

Body

JSON
{
  "appKey": "xxxxxxxxx",
  "mobile": "989159999999",
  "template": "tempname",
  "token": "20",
  "token2": "1",
  "token3": "2"
}

پاسخ موفق

JSON
{
  "success": true,
  "data": {
    "message": "پیام واتساپ با موفقیت ارسال شد"
  }
}

پاسخ خطا

JSON
{
  "success": false,
  "data": {
    "message": "ارسال پیام با خطا مواجه شد"
  }
}
!
شماره موبایل برای WhatsApp باید بدون 0 و + ارسال شود؛ مانند: 989159999999
08

پیگیری تراکنش‌ها

دریافت حداکثر ۵۰ تراکنش اخیر

POST
https://pay.babarkat.com/transaction/status

این API برای دریافت لیست تراکنش‌های اخیر بر اساس شماره موبایل یا شماره میز استفاده می‌شود.

Headers

HTTP Headers
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json

Body

JSON
{
  "appKey": "moa....",
  "type": "mobile",
  "data": "09037123456"
}
پارامتر مقادیر مجاز توضیح
appKey string کلید اختصاصی اپلیکیشن
type mobile / tableId نوع جستجو
data string شماره موبایل یا شماره میز

پاسخ موفق

JSON
{
  "success": true,
  "data": {
    "list": [
      {
        "id": 14,
        "isVisible": 0,
        "tableId": null,
        "price": 500,
        "otherData":
          "{\"test\":\"545454545\"}",
        "code": 0,
        "createdAt":
          "2025-07-22 00:00:00"
      }
    ]
  },
  "message":
    "50 تراکنش اخیر شما"
}

نمونه cURL

cURL
curl -X POST https://pay.babarkat.com/transaction/status \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
  "appKey": "moa....",
  "type": "mobile",
  "data": "09037123456"
}'
💡
فیلد otherData به صورت JSON String برگردانده می‌شود. در صورت نیاز باید آن را Decode کنید.
!
حداکثر ۵۰ تراکنش اخیر بازگردانده می‌شود.
09

نکات مهم

نکات امنیتی و عمومی استفاده از API

✓
همه درخواست‌ها در سامانه بابَرکت ثبت می‌شوند.
✓
در صورت موفقیت عملیات، مقدار active = 1 خواهد بود.
✕
در صورت خطا، مقدار active = 0 به همراه جزئیات خطا ثبت می‌شود.
🔐
توکن احراز هویت را هرگز داخل URL ارسال نکنید.
JSON
تمامی پاسخ‌های API در قالب JSON برگردانده می‌شوند و قابلیت استفاده در تمام زبان‌های برنامه‌نویسی را دارند.