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

برای راه اندازی درگاه پرداخت بانک سامان قبل از هر چیز باید IP سرور توسط بانک مورد تایید قرار گرفته و همچنین شناسه فروشنده (Merchant ID) و شناسه ترمینال (Terminal ID) را از بانک دریافت کرده باشید.
ارسال کاربر به درگاه پرداخت بانک سامان
برای ارسال کاربر کافی است مقدار پرداخت (به ریال)، شناسه فروشنده (Merchant ID)، شناسه تراکنش ( $transaction_id ) و همچنین آدرس بازگشت را به پذیرنده بانک توسط متد POST ارسال کنیم.
بر خلاف درگاه بانک ملت که قبل از ارسال اطلاعات به بانک باید کد صلاحیت (authority key) از بانک دریافت کنیم، شروع پرداخت در بانک سامان به یک فرم HTML ساده نیاز دارد. تنها نکته یکتا بودن شناسه تراکنش (transaction_id) در هربار ارسال به بانک است.

 

<form action="https://acquirer.sb24.com/CardServices/controller" method="post">
    <input type="hidden" id="Amount" name="Amount" value="<?php echo $amount; ?>" />
    <input type="hidden" id="MID" name="MID" value="$mid"/>
    <input type="hidden" id="ResNum" name="ResNum" value="<?php echo $transaction_id; ?>"/>
    <input type="hidden" id="RedirectURL" name="RedirectURL" value="http://yoursite.com/verify.php?transaction_id=<?php echo $transaction_id; ?>"/>
    <input name="B1" value="Process to payment" type="submit" />
</form>

 

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

 

$client = new SoapClient("https://acquirer.sb24.com/ref-payment/ws/ReferencePayment?WSDL");
$result = $client->VerifyTransaction(intval($_GET['transaction_id']), $MTID);
if ( $result <= 0 ) {
    echo 'Error';
    echo $result;
} else {
    echo 'Success';
    // Update your database
}


پارامترهای متد VerifyTransaction نیز به ترتیب شناسه پرداخت (transaction_id) و شناسه ترمینال (Terminal ID) است.
در مقاله بعدی ماژول Commerce بانک سامان را ارائه خواهم داد.

دیدگاه‌ها

تصویر حسین

حسین (تایید نشده)

سلام
چند وقت دیگه آماده میشه؟

تصویر محمدعلی اکبری

محمدعلی اکبری

سلام متاسفانه شرایط تست و توسعه فرآهم نیست. یعنی نتونستم به درگاه بانک سامان دسترسی داشته باشم. به IP تائید شده و شناسه نیاز دارم.

تصویر Anonymous

Anonymous (تایید نشده)

چرا برا 6 ننوشتی؟
چرا با زندگی مردم بازی میکنی؟

تصویر محمدعلی اکبری

محمدعلی اکبری

ببخشید :دی

تصویر leila

leila (تایید نشده)

سلام
من یه فرم با webform درست کردم ، برای پرداخت میتونم از همین کدهای بالا استفاده کنم؟یه توضیح میشه بدین؟از کامرس استفاده نمیکنم.یه پرداخت ساده هستش.

تصویر محمدعلی اکبری

محمدعلی اکبری
به ماژول Commerce Webform نگاه انداختید؟ اگر این به کارتون نمیاد باید ماژول خودتون رو بنویسید و می‌تونید از کد نمونه ماژول پرداخت هم استفاده کنید.
تصویر leila

leila (تایید نشده)

من پرداخت رو در یک ماژول بنویسم اون موقع چطوری به ماژول webform میتونم ربطش بدم؟یه آموزش در این رابطه سراغ دارین؟

تصویر محمدعلی اکبری

محمدعلی اکبری

شما بعد از نصب Webform و Commerce و Commerce Webform که سه ماژول جداگانه هستند، باید روی Commerce ماژول پرداخت نصب کنید. بعد همه این ماژول‌ها با هم کار خواهد کرد...

تصویر احمد

احمد (تایید نشده)

دست شما درد نکنه بابت همه ی ماژول هایی که به رایگان در دسترس قرار می دهید.
یه عده هستند همین ها رو می فروشند.
خیال می کنند که سیستم عامل نوشته اند :)

تصویر محمدعلی اکبری

محمدعلی اکبری

خواهش می‌کنم احمد جان :دی

تصویر محسن بیسجردی

محسن بیسجردی (تایید نشده)

با سلام و وقت بخیر.

اول از همه تشکر میکنم بابت گسترش فرهنگ Open Source.

در کامنتها مطالعه کردم گفته بودین امکان راه اندازی سیستم تست مربوط به بانک سامان را ندارین. اگر هنوز تمایل به کامل نمودن ماژول و دسترسی به درگاه بانک سامان را دارین این شرائط الان برای یک پروژه فراهم شده که در صورت صلاحدید میتونیم با همدیگه همکاری داشته باشیم.

با تشکر
محسن بیسجردی

تصویر محمدعلی اکبری

محمدعلی اکبری

سلام. خیلی عالی. هنوز دسترسی به درگاه سامان فراهم نشده تا ماژول مربوطه آماده بشه. اگر مایلید از طریق ای‌میل در ارتباط باشیم. ای‌میل بالاتر در کامنت‌ها هست...

تصویر محمدعلی اکبری

محمدعلی اکبری
نهایتا با کمک آقای بیسجردی ماژول آماده شد (اینجا).
تصویر بلورچی

بلورچی (تایید نشده)

سلام
من برای پلاگین ووکامرس-وردپرس نیازمند درگاه بانک سامان هستم آیا می توانید کمکی کنید ؟
ممنون

تصویر محمدعلی اکبری

محمدعلی اکبری

سلام، می‌تونم همانند کاری که برای درگاه پرداخت سامان در دروپال کردیم برای شما هم این پلاگین رو آماده کنیم.

- شما شرایط توسعه رو برای من آماده کنید و من ماژول مورد نظر رو برای شما آماده میکنم. بعد در همین بلاگ به صورت متن باز منتشر می‌کنیم ماژول نهایی رو...

تصویر hamid reza

hamid reza (تایید نشده)

سلام
شما میتونید منو تو راه اندازی درگاه بانک سینا کمک کنید؟
ممنون

تصویر محمدعلی اکبری

محمدعلی اکبری

سلام؛ برای چه سیستمی می‌خواید راه اندازی کنید؟ برای دروپال؟ الآن مستندات رو برای من ارسال کنید تا بررسی کنیم امروز وقت میشه یا نه؟ من شنبه اعزام می‌شم :دی شاید بعدش وقت نشه

تصویر hamid reza

hamid reza (تایید نشده)

برای وردپرس میخوام.

تصویر نیما نعمتی

نیما نعمتی (تایید نشده)

با سلام و خسته نباشید ،

من ماژول پرداخت بانک سامان را روی سایت فروشگاهی فعال کردم و به درستی به درپاه وصل می شود و لی مشکا اینجاست که در درگاه پرداخت مبلغ قابل پرداخت را 1000 ریال نمایش می دهد و مبلغ فاکتور را نمایش نمی دهد.
لطفا اگر می توانید من را راهنمایی کنید و اگر نیاز به دادن مشخصات ادمین سایت داشتید اطلاع دهید تا مشخصات برایتان ایمیل شود.
با تشکر

تصویر نیما نعمتی

نیما نعمتی (تایید نشده)

من ماژول پرداخت آنلاین بانک سامان را روی drupal commerce نصب کردم و به درستی به درگاه وصل می شود. فقط مشکل اینجاست که مبلغ قابل پرداخت را 1000 ریال نمایش میدهد و مبلغ فاکتور را نمایش نمی دهد.
لطفا من را راهنمایی کنید و در صورت نیاز به مشخصات ادمین سایت ، اطلاع دهید تا مشخصات برایتان ایمیل شود.
با تشکر فراوان

تصویر reza

reza (تایید نشده)

با سلام و خسته نباشید.
شرمنده برای درگاه اینترنتی افزونه رو خریداری و نصب کردم بانک دو آدرس خواسته میتونید راهنمایی کنید این دو آدرس چگونه به دست میاد. هرجا سرچ کردم نبود. یا من ندیدم.
آدرس بازگشتی
پورت پایگاه داده اینترنتی
شرمنده ممنون میشم راهنمایی فرمائید

تصویر m.shami

m.shami (تایید نشده)

سلام وقت بخیر
چطوری میتونم درگاه وردپرسی بانک ملت را روی سایتم فعال سازی کنم ( منظورم با MID(

افزودن نظر جدید