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

همانند خرید شارژ ابتدا محصول خود را از product یا filter بیاورید و بعد اطلاعات را تکمیل کنید

Idempotency چیست ؟

به معنای این است که شما می توانید یک درخواست را چندین بار ارسال کنید و در صورت موفقیت یا عدم موفقیت تراکنش، نتیجه همان خواهد بود. به عنوان مثال اگر شما یک درخواست خرید شارژ را ارسال کنید و به هر دلیلی پاسخ موفق دریافت نکنید، می توانید همان درخواست را دوباره ارسال کنید و نتیجه همان خواهد بود.

پس با توجه به توضیحات بالا برای جلوگیری از درخواست های تکراری شما می بایست برای هر درخواست یک کد یکتا تولید کنید و حتما ارسال کنید در صورت عدم ارسال شارژ یا بسته شما انجام نخواهد شد

نحوه ارسال Idempotency هم به صورت هدر و با کلید Idempotency-Key می باشد

نمونه محصول

{
    "id": 62,
    "name": "شارژ مستقیم ایرانسل - مبلغ دلخواه",
    "name_en": null,
    "description": "شارژ مستقیم ایرانسل - مبلغ دلخواه",
    "description_full": null,
    "sku": null,
    "price": 5000,
    "second_price": 2000000,
    "showable_price": null,
    "type": "cell_direct_charge",
    "minimum_sale": null,
    "dimension": null,
    "score": 0,
    "status": 1,
    "options": null,
    "deliverable": 0,
    "third_party_id": null,
    "capacity": null,
    "period": null,
    "sim_card_type": "credit",
    "operator_id": 2,
    "profile_id": null,
    "order": 62,
    "created_at": null,
    "updated_at": null,
    "categories": []
}
POST/api/top-up

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

برای خرید شارژ فیلد های زیر را ارسال کنید
و همچنین برای تست این api بدون رفتن به اپراتور و کم شدن از حساب شما می توانید از محیط تست ما استفاده کنید
برای این امر کافیست پارامتر fake_response را true برای موفق و false برای جواب نا موفق ارسال کنید

  • Name
    product_id *
    Type
    string
    Description

    ایدی عددی محصول در body ارسال شود به صورت string ارسال می شود

  • Name
    mobile *
    Type
    string
    Description

    شماره موبایل مورد نظر برای خرید شارژ که حتما باید با این فرمت باشد :
    98902XXXXXXX

  • Name
    price *
    Type
    string
    Description

    مبلغ پرداختی اگر محصول انتخاب شده دارای second_price بود شما می توانید مبلغ را از عدد price تا second_price ارسال کنید... و به صورت string ارسال می شود

  • Name
    webservice_code *
    Type
    string
    Description

    code مورد نیاز شما برای ذخیره سازی و بررسی و پیگیری درخواست ها

  • Name
    fake_response
    Type
    boolean
    Description

    توجه داشته باشید این مقدار فقط در محیط تست با آدرس https://dev.testesaj.ir معتبر می باشد

درخواست

POST
/api/top-up
# نمونه درخواست با cURL
curl -X POST "https://gateway.esaj.ir/api/top-up" \
-H "Authorization: Bearer {TOKEN}" \
-H "Idempotency-Key: YOUR_RANDOM_IDENPOTENCY" \
-H "Content-Type: application/json" \
-d '{
"product_id": 62,
"mobile": "98902XXXXXXX",
"price": 5000,
"webservice_code": "YOUR_CODE"
}'

نتیجه درخواست

{
    "message": "successful"
}

اطلاعات این صفحه مفید بود ؟