فرایند تراکنش خرید

نگاه کلی به فرایند تراکنش خرید :
پذیرنده ( فروشنده ) : خریدار را آماده پرداخت می نماید در این مرحله فروشنده عملیات زیر را انجام می دهد :
1 پس از پایان فاز انتخاب کالا، مشتری آمادگی خود را برای پرداخت پول از طریق حساب بانک پارسیان اعلام میکند، فروشنده مشخصات تراکنش را با فراخوانی متد PinPaymentRequest به بانک اعلام می دارد در این زمان eShop این متد را از وب سرویس دروازه پرداخت صدا میزند:

PinPaymentRequest(pin,amount,ordered,callbackUrl,ref authority,ref status)
Pin (string): پین فروشنده
Amount (integer): رقم پرداخت
OrderId (integer): کد عملیات
CallbackUrl (string): صفحه بازگشت مشتری، پس از انجام عمل پرداخت
Authority (long integer): کد عملیاتی دروازه پرداخت که یک کد تصادفی و واحد برای تمامی عملیات آنلاین با
سایتها میباشد، فروشگاه آنلاین ملزم به ثبت و نگهداری این کد میباشد.
Status (byte): کد وضعیت
0: موفق
20, 22: پین فروشنده درست نمیباشد
30: عملیات قبلا با موفقیت انجام شده است
34: شماره تراکنش فروشنده درست نمیباشد

2 در جواب این درخواست بانک AU را به همراه وضعیت پیوست لیست وضعیت ها اعلام می دارد . پذیرنده وظیفه دارد مشخصات را ذخیره و در صورت موفق بودن وضعیت (Status=0) و صحصیح بودن AU (مخالف 1-) کاربر را به سایت دروازه پرداخت redirect کند، authority بعنوان پارامتر Query String با نام au، باید در انتهای URL سایت دروازه پرداخت قرار گیرد، بعنوان مثال:
https://www.pec24.com/pecpaymentgateway/default.aspx?au=791684761124

از زمان ارسال کاربر به سایت پرداخت، زمان محدودی (حدود 10 دقیقه) مشتری مهلت دارد که عملیات پرداخت خود را در سایت پرداخت بانک، انجام دهد، در غیر اینصورت authority کد expire میشود و در صورت درخواست مجدد، E-Shop مجددا برای وی درخواست authority کد میکند.

دروازه پرداخت بانک به شکل زیر میباشد:

bank

 

3 بعد از پایان عملیات درسمت بانک ، بانک وظیفه داردکاربر را به سایت فروشنده که از طریق call back url مشخص شده است بازگرداند
4 در صفحه call back پذیرنده وظیفه دارد سفارش معادل با AU که از طرف بانک بروی call back url ارسال شده یافته و وضعیت تراکنش ( rs ) که از همین طریق ارسال شده است را چک نماید در صورت موفق بودن ، درخواست ثبت موفقیت تراکنش را به بانک اعلام کند به صورت که میبایست مجددا از سرور دروازه پرداخت صحت انجام عملیات را سئوال نماید.

PaymentEnquiry(pin, authority, ref status)

چنانچه تا قبل از فراخوانی این متد ارتباط اینترنتی کاربر قطع شود، دروازه پرداخت بصورت اتوماتیک پرداخت وی را ابطال میکند.

5 بانک در پاسخ به ثبت موفقیت تراکنش وظیفه دارد یک وضعیت به همراه کد وصول که به شرط موفق بودن وضعیت معتبر است به پذیرنده اعلام نماید .
6 پذیرنده وظیفه دارد پس از دریافت این اطلاعات درصورت موفقیت وضعیت به خریدار اعلام موفقیت تراکنش را اعلام کند .
لازم به ذکر است در حین و یا بعد از فرایند ثبت موفقیت تراکنش پذیرنده به هر دلیلی امکان ارائه سرویس را نداشته باشد باید حتما اقدام به ارسال تراکنش برگشت نماید .