خرید بسته پیشنهادی ایرانسل
در اپراتور ایرانسل برای هر شماره تعدادی بسته پیشنهادی وجود دارد که شما می توانید با api زیر ابتدا بسته های پیشنهادی کاربر با شماره موبایل ایرانسل به دست بیاورید و سپس هرکدام از بسته های را بخرید
Idempotency چیست ؟
به معنای این است که شما می توانید یک درخواست را چندین بار ارسال کنید و در صورت موفقیت یا عدم موفقیت تراکنش، نتیجه همان خواهد بود. به عنوان مثال اگر شما یک درخواست خرید شارژ را ارسال کنید و به هر دلیلی پاسخ موفق دریافت نکنید، می توانید همان درخواست را دوباره ارسال کنید و نتیجه همان خواهد بود.
پس با توجه به توضیحات بالا برای جلوگیری از درخواست های تکراری شما می بایست برای هر درخواست یک کد یکتا تولید کنید و حتما ارسال کنید در صورت عدم ارسال شارژ یا بسته شما انجام نخواهد شد
نحوه ارسال Idempotency هم به صورت هدر و با کلید Idempotency-Key می باشد
در صورت عدم ارسال Idempotency در خواست شما پردازش و انجام نخواهد شد
دریافت بسته های پیشنهادی
فقط شماره موبایل کاربر مورد نظر را به صورت POST در Body در خواست ارسال کنید و لیستی از بسته ها دریافت کنید.
- Name
mobile *- Type
- string
- Description
حتما با 98 شروع بشود
درخواست
curl -X POST "https://gateway.esaj.ir/api/irancell/offers/" \
-H "Authorization: Bearer {TOKEN}" \
-H "Content-Type: application/json" \
-d '{"mobile": "98902XXXXXXX"}'
نتیجه درخواست
{
"status": true,
"ResultCode": 0,
"TransactionID": "WsFzfiU",
"CommandStatus": "OK",
"OrigResponseMessage": "BuyableOfferEnquirySUCCESS ",
"message": "BuyableOfferEnquirySUCCESS ",
"offersList": [
{
"offerCode": "8364983790",
"offerDesc": "10000T onnet call 2000T",
"offerDescLN": "10000ت مکالمه ایرانسلی 2000ت",
"validityDays": "",
"offerType": "0",
"amount": "20000",
"name": "10000ت مکالمه ایرانسلی روزانه 2000ت"
},
{
"offerCode": "PO1484ZCY",
"offerDesc": "1GB data 1days 3650T",
"offerDescLN": "1گ اینترنت 1 روزه 3650ت",
"validityDays": "",
"offerType": "0",
"amount": "36500",
"name": "1گ اینترنت 1 روزه 3650ت"
},
{
"offerCode": "64234",
"offerDesc": "1.5GB DATA 5900T",
"offerDescLN": "1.5 گیگ اینترنت 5900ت",
"validityDays": "",
"offerType": "0",
"amount": "59000",
"name": "1.5 گیگ اینترنت 1 روزه 5900ت"
},
]
}
خرید بسته پیشنهادی
بعد از انتخاب بسته پیشنهادی مورد نظر offerCode و offerType و amount را ذخیره می کنید
بعد از آن اطلاعات به صورت زیر به api خرید بسته ارسال می کنید
- Name
product_id *- Type
- number
- Description
برای سیمکارت های دائمی عدد 511
برای سیمکارت های اعتباری عدد 510
- Name
mobile *- Type
- string
- Description
شماره موبایل مورد نظر برای خرید شارژ که حتما باید با این فرمت باشد :
98902XXXXXXX
- Name
price *- Type
- number
- Description
عدد amount که در لیست دریافت کرده اید
توجه داشته باشید مبلغ باید به علاوه ده درصد مالیت بر ارزش افزوده شود
مبلغ ۳۰٫۰۰۰
مبلغ با ارزش افزوده : ۳۳٫۰۰۰
- Name
offerCode *- Type
- string
- Description
عدد offerCode که در لیست دریافت کرده اید
- Name
offerType *- Type
- string
- Description
عدد offerType که در لیست دریافت کرده اید
- Name
webservice_code *- Type
- string
- Description
code مورد نیاز شما برای ذخیره سازی و بررسی و پیگیری درخواست ها
- : این فیلد ها اجباری می باشند
درخواست
curl -G https://gateway.esaj.ir/api/top-up/package/ \
-H "Authorization: Bearer {token}" \
-H "Idempotency-Key: Your_random_string" \
-F mobile=98902XXXXXXX
-F product_id=510
-F price=5000
-F offerType="0"
-F offerCode="1231"
-F profile_id=54
-F webservice_code="YOUR CODE"
نتیجه درخواست
{
"message": "successful"
}