درگاه تلفنی
#
1. سرویس درخواست رمز پویااين وبسرويس برای ارسال پيامک رمز پويا به پرداخت کننده ميبايست مورد استفاده قرار گيرد.
آدرس وبسرویس
https://core.paystar.ir/api/ivr/otp-v2
برای انجام تراکنش IVR ابتدا باید این سرویس با متد POST فراخوانی شود تا رمز پویای مورد نیاز، به پرداخت کننده پیامک شود.
- پارامترهای مورد نیاز در قسمت Body درخواست ودر قالب json میبایست ارسال شوند:
نام فیلد | نوع داده | شرح | اجباری |
---|---|---|---|
amount | double | مبلغ تراکنش | بله |
pan | string | شماره کارت پرداخت کننده | بله |
order_id | string | شناسه سفارس | بله |
sequence | string | شناسه درگاه تلفنی | بله |
توجه: در فیلد sequence میبایست شناسه درگاه تلفنی که در پنل پی استار دریافت کرده اید را قرار دهید .
• يکتايی شناسه سفارش در سامانه بررسی نمیشود. طول شناسه سفارش حداقل 1 و حداکثر 50 کاراکتر میباشد.
• فيلد مبلغ ميبايست مضربی از 1000 باشد.
- نمونه پارامترهای ورودی سرویس:
- پارامترهای خروجی وبسرویس:
نام فیلد | نوع داده | شرح |
---|---|---|
status | int | وضعیت پاسخ |
data | array | - |
errors | array | خطاهای رخ داده |
توجه : در فيلد status مقدار 1 ،به معنی پاسخ موفق و ارسال پيامک رمز پويا به پرداخت کننده است. هر مقدار ديگری غير از آن به معنی رخداد خطا در درخواست ارسالی می باشد. مقادير invoice_id و price که مبلغ با احتساب کارمزد می باشد در فيلد data برگردانده می شود.
نمونه کد (php) :
نمونه کد (C# .net) :
نمونه کد (Python) :
- نمونه پاسخ موفق:
- نمونه پاسخ ناموفق:
توجه: توضيحات مربوط به مقادير فيلد transactionStatus در پاسخ ناموفق، در جدول کدهای وضعيت انتهای مستند قابل مشاهده است.
#
2. سرویس پرداختآدرس وبسرویس
اين وبسرويس برای انجام تراکنش ميبايست فراخوانی شود.
https://core.paystar.ir/api/ivr/pay
نوع فراخوانی: POST
پرداخت از طریق تلفن گویا
در این روش، پرداخت کننده به تلفن گویای پذیرنده متصل شده و اطلاعات مورد نیاز از پرداخت کننده دریافت شده و در انتها وبسرویس از طریق تلفن گویا فراخونی می شود.
- پارامترهای مورد نیاز که در قسمت Body درخواست و در قالب json می بایست ارسال شوند:
نام فیلد | نوع داده | شرح | اجباری |
---|---|---|---|
ivr | int | مقدار ثابت 1 ارسال شود | بله |
pan | string | شماره کارت پرداخت کننده | بله |
pin | string | رمز پویا | بله |
amount | int | مبلغ تراکنش | بله |
order_id | string | شناسه سفارش | بله |
merchant_cid | string | شماره تلفن / موبایل پرداخت کننده | خیر |
sequence | string | شناسه درگاه تلفنی | بله |
wallet_hashid | string | شناسه کیف پول | خیر |
توجه:
• فيلد مبلغ (amount )در صورتی که ابتدا سرویس otp-v2 فراخوانی شده باشد، الزامی نبوده و مبلغ تراکنش همان مبلغی که در سرویس otp-v2 فراخوانی شده است خواهد بود. در غير اینصورت ارسال آن در این وبسرویس الزامی است.
• توجه: در فيلد sequence ميبایست شناسه درگاه IVR که در پنل پی استار پذیرنده دریافت کرده است را قرار دهد.
• فيلد مبلغ ميبایست مضربی از 1000 باشد.
• شناسه کيف پول باید متعلق به کاربر دارنده درگاه باشد. بدیهی است که وضعيت کيف باید فعال باشد.
توجه: در روش پرداخت از طریق تلفن گویا، هر دو وبسرویس در خواست رمز پویا و وبسرویس پرداخت از طریق تلفن گویا فراخوانی می شوند. اطلاعات مورد نیازی که از پرداخت کننده باید دریافت شود در مرحله اول شماره کارت می باشد. پس از دریافت شماره کارت از مشتری، وبسرویس درخواست رمز پویا فراخوانی شده و در مرحله بعد از مشتری باید رمز پویا پیامک شده دریافت شود. در این مرحله تمامی اطلاعات مورد نیاز بدست آمده و میتوان وبسرویس پرداخت را فراخوانی کرد.
- نمونه پارامترهای ورودی وبسرویس:
- پارامترهای خروجی وبسرویس:
نام فیلد | نوع داده | شرح |
---|---|---|
status | int | وضعیت پاسخ |
data | array | - |
errors | array | خطاهای رخ داده |
نمونه کد (php) :
نمونه کد (C# .net) :
نمونه کد (Python) :
توجه: چنانچه تراکنش با موفقیت انجام شود، فیلد status با مقدار 1 و فیلد data شامل موارد زیر خواهد بود.
- جدول نوع داده data در صورت برگشت پاسخ موفقیت آمیز
نام فیلد | نوع داده | شرح |
---|---|---|
refID | string | شناسه پیگیری تراکنش |
trackingCode | string | کد رهگیری تراکنش |
توجه: در صورتی که انجام تراکنش با خطا مواجه شود فیلد status با مقدار 0 و فیلد data شامل موارد زیر خواهد بود .
- جدول نوع داده data در صورت برگشت پاسخ موفقیت آمیز
نام فیلد | نوع داده | شرح |
---|---|---|
refID | string | مقدار ثابت 0 |
transactionStatus | string | کد خطای تراکنش |
trackingCode | string | کد رهگیری تراکنش |
شرح کدهای خطای تراکنش در جدول مربوطه در انتهای مستند قابل مشاهده است.
#
3. سرویس استعلام تراکنش موفقآدرس وبسرویس
https://core.paystar.ir/api/ivr/inquiry
اين وبسرويس برای استعالم موفق بودن تراکنش می توان فراخوانی شود.
- پارامترهای ورودی:
نام فیلد | نوع داده | شرح | اجباری |
---|---|---|---|
tracking_code | string | کد رهگیری تراکنش | بله |
sequence | string | شناسه درگاه IVR | بله |
توجه:
• توجه: در فيلد sequence ميبايست شناسه درگاه IVR که در پنل پی استار پذيرنده دريافت کرده است را قرار دهد.
نمونه پارامترهای ورودی وبسرويس
عنوان | نوع داده | شرح |
---|---|---|
status | string | وضعیت پاسخ |
data | array | _ |
message | string | پیغام دریافتی |
نمونه کد (php) :
نمونه کد (C# .net) :
نمونه کد (Python) :
توجه: چنانچه تراکنش با موفقيت انجام شده باشد، فيلد status با مقدار ok و فيلد data شامل موارد زير خواهد بود.
جدول نوع داده data در صورت برگشت پاسخ موفقيت آميز:
عنوان | نوع داده | شرح |
---|---|---|
refID | string | شناسه ارجاع بانکی |
توجه: در صورتی که انجام تراکنش با خطا مواجه شده باشد فيلد status با مقدار fail و فيلد message پيغام خطای دريافتی خواهد بود.
#
4. جدول کد خطاکد خطا | پیام |
---|---|
3 | پذیرنده کارت نامعتبر است |
5 | تراکنش نامعتبر است |
13 | مبلغ نامعتبر است |
14 | کارت نامعتبر است |
20 | پاسخ نامعتبر است |
21 | تراکنش نامعتبر است |
42 | حساب کارت نامعتبر است |
51 | موجودی کافی نیست |
54 | تاریخ انقضا کارت گذشته است |
55 | رمز نادرست است |
57 | دارنده کارت مجاز به انجام تراکنش نیست |
59 | خطای امنیتی (رمز نامعتبر) |
61 | سقف تراکنش تکمیل شده است |
62 | کارت محدود شده است |
63 | پایانه نامعتبر است |
75 | تعداد دفعات وارد کردن رمز بیش از حد مجاز است |
78 | کارت غیرفعال است |
80 | خطای سیستمی رخ داده است |
90 | عملیات پایان روز کاری در حال انجام است |
91 | صادر کننده در وضعیت عملیاتی نمی باشد |
94 | تراکنش تکراری است |
115 | شناسه قبض نادرست است |
121 | شناسه پرداخت نادرست است |