در مقاله قبل در مورد استفاده از وب سرویس درگاه پرداخت وگرفتن APIkey توضیح دادیم در این مقاله در مورد روش کار با وب سرویس IDpay بخش 1 توضیح خواهیم داد .
این راهنما نحوه اتصال برنامه نویسان به درگاه های پرداخت از طریق API آیدی پی را توضیح میدهد(وب سرویس IDpay بخش 1 ).
API آیدی پی به روش REST سازماندهی شده است. همچنین بدنه درخواست ها و پاسخ ها با فرمت JSON میباشد.
احراز هویت
برای استفاده از API های آیدی پی نیاز به یک API KEY است. شما میتوانید به داشبورد خود در آیدی پی رفته و در بخش وب سرویسهای من، یک وب سرویس جدید ایجاد کنید.
بعد از ایجاد وب سرویس، API KEY خود را دریافت میکنید و میتوانید برای فراخوانی API از آن استفاده کنید.
برای ارسال تمام درخواست ها باید API KEY را مانند مثال زیر در header ارسال نمایید:
X-API-KEY: 6a7f99eb-7c20-4412-a972-6dfb7cd253a4
نکته :
در مثال بالا، مقدار 6a7f99eb-7c20-4412-a972-6dfb7cd253a4 باید با API KEY منحصر بفرد شما عوض شود.
آزمایشگاه
برای تست API و نحوه کارکرد آن میتوانید در header درخواست های خود کلید X-SANDBOX را ارسال کنید. در صورتیکه مقدار این پارامتر true یا 1 باشد، تمام فرایندهای بعدی بصورت آزمایشی ایجاد و شبیه سازی میشوند.
همچنین در این حالت حساسیت به آدرس وب سایت و IP در درخواست های ارسال شده اعمال نمیشود، و میتوان درخواست خود را از با هر آدرس Callback یا IPی ارسال کنید.
مقدار پیش فرض این پارامتر false یا 0 است
ایجاد تراکنش
با استفاده از آدرس زیر میتوانید یک تراکنش جدید ایجاد کنید.
آدرس درخواست
POST https://api.idpay.ir/v1.1/payment
پاسخ
درصورتیکه درخواست موفق باشد، وضعیت پاسخ 201 Created اعلام خواهد شد.
در پاسخ، مقادیر id و link باز میگردد که بهتر است آنها را در دیتابیس خود ذخیره کنید. بعد از ذخیره اطلاعات دریافتی، پرداخت کننده باید به لینک دریافت شده منتقل شود.
نکته :
درصورتیکه هر یک از مقادیر name یا phone یا mail معتبر نباشند، خطایی باز نمیگردد و هیچ مقداری برای آن ذخیره نمیشود.
نکته :
دامنه آدرس بازگشت به سایت پذیرنده یا callback باید مطابق با آدرسی باشد که در وب سرویسهای من تعریف شده است.
وضعیت 200: با اجرای دستور بالا پاسخی مشابه متن زیر با فرمت JSON دریافت میشود:
{
“id”: “d2e353189823079e1e4181772cff5292”,
“link”: “https://idpay.ir/p/ws-sandbox/d2e353189823079e1e4181772cff5292”
}
وضعیت 406: در صورت بروز خطا، پاسخی مشابه متن زیر با فرمت JSON دریافت میشود:
{
“error_code”: 32,
“error_message”: “شماره سفارش order_id
نباید خالی باشد.”
}
در این مطلب در مورد روش استفاده وب سرویس IDpay بخش 1 توضیح دادیم در مقاله بعد در مورد روش استفاده وب سرویس IDpay بخش 2 توضح میدهیم.
- برچسب ها:
- api
- Web API
- وب سرویس
- وب سرویس بانکی