PDA

View Full Version : کار با بانک سامان



bahar_engineer
سه شنبه 26 آبان 1388, 12:24 عصر
سلام

من یه فروشگاه دارم می سازم که قراره خریدش با بانک سامان باشه

Merchant id هم از بانک گرفتم ... اما خیلی مراحل کار گیج کننده است

اصلا نمی فهمم همه تاپیک ها و pdf های بانکم خوندم

اما نمی دونم اصلا از کجا شروع کنم

کی می تونه کمک کنه؟:افسرده:

bahar_engineer
سه شنبه 26 آبان 1388, 14:07 عصر
معلومه كه خوب نخوندي .

چرا چند بار خوندم اما من آدرس webservice رو در webrefrence اضافه کردم . (حالا به عنوان اولین کار)
گفتم شاید بشه از این گام شروع کرد... اما بعد از اینکه url رو وارد کردم یه صفحه نمایش داده شد که به این شکل بود



Address:
WSDL:
(https://acquirer.sb24.com/ref-payment/ws/ReferencePayment?WSDL) Port QName:
Remote interface:
Implementation class:
Model:


البته اینا هر کدوم جلوشون اطلاعات هست ... حالا اینا به چه درد من می خوره ؟
باهاشون چکار کنم؟
2 تا لینک داره یکی اون که WSDL هست که من روش کلیک کردم و وب ریفرنس به سایت اضافه شد

و یکی دیگه MODEL که یه فایل زیپ شده بود ... که بازش کردم اون هم ReferencePayment هست
با این باید چکار کنم؟

گام بعدی چیه؟ من سبد خرید رو درست کردم ... خوب بعد از اینکه TOTAL AMOUNT رو بدست آوردم توی همون صفحه که کاربر هست اونو هدایت کنم به صفحه بانک ؟ و پارامترهایی که بانک خواسته رو ارسال کنم ؟ چطوری ؟ آیا QUERYSTRING امنیت لازم رو داره؟

در ضمن من کدهای سمپلی که بانک بهم داده VB هستن در صورتی که من C# کار می کنم

از اون هم نمی تونم خیلی کمک بگیرم
اگه کسی سی شارپشو داره لطفا بذاره ...

kiosksoft
سه شنبه 26 آبان 1388, 19:57 عصر
دوست عزیز

مراحل قرارداد رو طی کردین و اطلاعات رو از بانک گرفتی درسته ؟

فروشگاهی که ساختی رو هم کار نداریم . فقط یه صفحه خالی داریم که یه دکمه داره که میتونیم روی اون کلیک کنیم .

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

در واقع این پروژه رو ساختید:
http://barnamenevis.org/forum/attachment.php?attachmentid=39947&stc=1&d=1258476085


حالا در قسمت لود صفحه این متغیر ها رو مقدار دهی کنید :



TotalAmount = Session["TotalAmount"].ToString();
ReservationNumber = Session["reservationcode"].ToString();
MerchantID = Session["merchantid"].ToString();
RedirectURL = Session["redirecturl"].ToString();
Session["Amount"] = TotalAmount;


در قسمت کد این تعاریف رو بصورت عمومی قرار دهید:


public string TotalAmount = string.Empty;
public string ReservationNumber = string.Empty;
public string MerchantID = string.Empty;
public string RedirectURL = string.Empty;

و در قسمت HTML این کد رو قرار دهید:




<form id="form1" runat="server" method="post" action="https://acquirer.sb24.com/CardServices/controller">
<input type="hidden" name="Amount" value="<%= TotalAmount %>" />
<input type="hidden" name="ResNum" value="<%= ReservationNumber %>" />
<input type="hidden" name="MID" value="<%= MerchantID %>" />
<input type="hidden" name="RedirectURL" value="<%= RedirectURL %>" />
<p style="font-family:Tahoma;font-size:14px;color:Red;" align="right">
آیا مطمئن هستید؟

<hr />


<div style="text-align:right;">


<input id="btnsend" type="submit" value="بله" style="width:150px" />
</div>
</p>


</form>



این مقادیر رو بر اساس اطلاعات دریافتی از بانک تکمیل کنید بقیه رو هم هر چی دوست دارید وارد کنید


الان اگر روی دکمه ای که گذاشتید کلیک کنید باید به سایت بانک سامان هدایت شوید .

تا این مرحله رو انجام بدید تا بقیه رو هم با هم تکمیل کنیم .

bahar_engineer
چهارشنبه 27 آبان 1388, 09:56 صبح
دوست عزیز

مراحل قرارداد رو طی کردین و اطلاعات رو از بانک گرفتی درسته ؟

فروشگاهی که ساختی رو هم کار نداریم . فقط یه صفحه خالی داریم که یه دکمه داره که میتونیم روی اون کلیک کنیم .

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

در واقع این پروژه رو ساختید:
http://barnamenevis.org/forum/attachment.php?attachmentid=39947&stc=1&d=1258476085


حالا در قسمت لود صفحه این متغیر ها رو مقدار دهی کنید :



TotalAmount = Session["TotalAmount"].ToString();
ReservationNumber = Session["reservationcode"].ToString();
MerchantID = Session["merchantid"].ToString();
RedirectURL = Session["redirecturl"].ToString();
Session["Amount"] = TotalAmount;
در قسمت کد این تعاریف رو بصورت عمومی قرار دهید:


public string TotalAmount = string.Empty;
public string ReservationNumber = string.Empty;
public string MerchantID = string.Empty;
public string RedirectURL = string.Empty;و در قسمت HTML این کد رو قرار دهید:




<form id="form1" runat="server" method="post" action="https://acquirer.sb24.com/CardServices/controller">
<input type="hidden" name="Amount" value="<%= TotalAmount %>" />
<input type="hidden" name="ResNum" value="<%= ReservationNumber %>" />
<input type="hidden" name="MID" value="<%= MerchantID %>" />
<input type="hidden" name="RedirectURL" value="<%= RedirectURL %>" />
<p style="font-family:Tahoma;font-size:14px;color:Red;" align="right">
آیا مطمئن هستید؟

<hr />


<div style="text-align:right;">


<input id="btnsend" type="submit" value="بله" style="width:150px" />
</div>
</p>


</form>

این مقادیر رو بر اساس اطلاعات دریافتی از بانک تکمیل کنید بقیه رو هم هر چی دوست دارید وارد کنید


الان اگر روی دکمه ای که گذاشتید کلیک کنید باید به سایت بانک سامان هدایت شوید .

تا این مرحله رو انجام بدید تا بقیه رو هم با هم تکمیل کنیم .

من دقیقا این مراحل رو اجرا کردم اما همچنان این خطای اعصاب خورد کن رو دارم

تو کد زیر


TotalAmount = Session["TotalAmount"].ToString();
ReservationNumber = Session["reservationcode"].ToString();
MerchantID = Session["merchantid"].ToString();
RedirectURL = Session["redirecturl"].ToString();
Session["Amount"] = TotalAmount;


این خطای
Object reference not set to an instance of an object. رو می ده

فکر کنم چون سشن ها رو مقدار دهی نکردیم و توی لود صفحه قراره به متغیر نسبتشون بدیم

نظرتون چیه ؟ جدا سشن ها رو تعریف و مقدار دهی کنم؟ پس اونوقت این قضیه پارامترهایی که با post ارسال می کنیم چی می شه ؟

bahar_engineer
چهارشنبه 27 آبان 1388, 10:18 صبح
ممنون سشن ها رو مقدار دهی کردم درست شد . به سایت بانک وصل شد و اطلاعات فروشنده رو هم پذیرفت ..

منتظر بقیه اش هستم... سوالم اینه که حالا مشتری خرید رو انجام می ده بعد بانک باید رسید دیجیتالی رو به فروشنده برگردونه دیگه . اونو چطور دریافت کنم؟ بانک به صفحه url که من بهش دادم اونها رو پست می کنه؟ کاربر اون صفحه رو می بینه دیگه ؟ نه؟

Himalaya
چهارشنبه 27 آبان 1388, 14:08 عصر
من برنامه شو که با C#‎‎‎ نوشته شده دارم... منظورم نمونه کدهای خود بانکه ... فکر کنم اگه این کدها رو ببینی (چون گفتی سی شارپ کار میکنی) و همزمان راهنمایی رو هم که بانک بهت داده مطالعه کنی راحت متوجه بشی که چه خبره... ...اگه بهروز خان اجازه بده میزارمش اینجا اگه نه که هیچ... اجازه گرفتم چون گفتم شاید مثل تلریکه پاکش کنی...اونوقت دوباره دعوامون میشه... شوخی کردم...من مخلص آقا بهروزم هستم:چشمک:
بهروز خان منتظرم

Behrouz_Rad
چهارشنبه 27 آبان 1388, 14:51 عصر
من برنامه شو که با C#‎‎‎‎ نوشته شده دارم... منظورم نمونه کدهای خود بانکه ... فکر کنم اگه این کدها رو ببینی (چون گفتی سی شارپ کار میکنی) و همزمان راهنمایی رو هم که بانک بهت داده مطالعه کنی راحت متوجه بشی که چه خبره... ...اگه بهروز خان اجازه بده میزارمش اینجا اگه نه که هیچ... اجازه گرفتم چون گفتم شاید مثل تلریکه پاکش کنی...اونوقت دوباره دعوامون میشه... شوخی کردم...من مخلص آقا بهروزم هستم:چشمک:
بهروز خان منتظرم

مشکلی نیست دوست من. قرار بدید. :لبخندساده:

hobab-theme
چهارشنبه 27 آبان 1388, 16:48 عصر
سلام به همه ی دوستان
دوستان اگه امکانش هست کد وی بی رو هم قرار بدن تا یه نگاهی بهش بندازیم واسه آینده!
ممنون

bahar_engineer
چهارشنبه 27 آبان 1388, 17:05 عصر
اینم کد وی بی برای وی بی کارها

Himalaya
چهارشنبه 27 آبان 1388, 20:54 عصر
شرمنده که دیر شد...اینم از معایب قطع برقه
فایلی که میزارم شامل ایناس... راهنماش رو هم همراهش قرار میدم همین جا

with C# --- dot net 2
php
ASP
delphi
java
perl
html

لینک دانلود همه گزینه های ذکر شده (http://www.4shared.com/file/154717399/68db0221/sample.html)

فایل راهنما (البته اینم واسه خود بانکه) (http://www.4shared.com/file/154761450/2fb660c0/help.html)

bahar_engineer
پنج شنبه 28 آبان 1388, 15:57 عصر
من کدهای c# رو توی سایت قرار دادم ... حالا که تست می کنم این خطا رو می گیرم از بانک که عکسش ضمیمه هست(خطا در شبکه)

البته من کارتم سپهر صادرات هست و رمز دوم رو گرفتم اما تاریخ انقضا بهم نداد روی کارت هم چیزی ننوشته

مجبور شدم تاریخ انقضا رو از خودم وارد کنم

و با وجود این خطا وقتی تکمیل فرایند رو می زنم توی بانک سامان، به صفحه من که پست بک می شه پیغام خطاش اینه :

تراکنش توسط خریدار کنسل شد

که این خطا در کدهای من در این شرایط نمایش داده می شه



if (transactionState.Equals("Canceled By User") || transactionState.Equals(string.Empty))
{
// Transaction was canceled by user
isError = true;
errorMsg = "تراكنش توسط خريدار كنسل شد";
}


خوب اگه تاریخ انقضا مشکل داره چرا خطای تاریخ انقضا رو نمی ده ؟



else if (transactionState.Equals("Suspected Fraud Pick Up"))
{
// User did not insert cvv2 & expiredate or they are wrong.
isError = true;
errorMsg = "را اشتباه وارد نموده و یا اصلاً وارد نکرده است ExpDate و یا CVV2 خریدار فیلد";
}

kiosksoft
پنج شنبه 28 آبان 1388, 17:24 عصر
دوست عزیز


خوب اگه تاریخ انقضا مشکل داره چرا خطای تاریخ انقضا رو نمی ده ؟

تاریخ رو خودتون وارد کنید فقط منطقی باشه ، یعنی تاریخ درست باشه و منقضی نشده باشه.


قدم به قدم برید جلو و کارهایی رو که انجام میدهید رو گزارش بدید که بقیه بتونن استفاده کنن. ظاهرا کلیه مراحلی رو که نوشتم رو انجام دادید . مرحله بعدی اینه که سایت تون رو طوری تنظیم کنید که بعد از انجام بررسی های بانک ، سایت بانک کاربر رو به آدرسی که شما تعیین میکنید هدایت کنه .

هنگام هدایت کاربر به صفحه ای که شما تعیین کردید ، سایت بانک نتایج تراکنش های خود را به صفحه مورد نظر شما ارسال میکند . در این صفحه شما باید این مقادیر را دریافت نمایید و طبق مستندات ارائه شده توسط بانک تصمیم گیری کنید.

تا اینجا اگه سوالی براتون پیش اومده بفرمایید.

bahar_engineer
شنبه 30 آبان 1388, 11:16 صبح
توی تست های قبلی تاریخ رو خودم وارد کردم و ماه رو 12 و سال رو 99 زدم

اما همون خطا رو داد که توی پست قبلی گفتم... سوالم اینه که چرا خطای کنسل شدن توسط خریدار رو می ده ؟
اگه هم مشکلی نداره که تاریخ انقضا رو خودم وارد کنم پس اصلا چرا خطا می ده؟
من صفحه ای که Url شو به بانک دادم لوکاله... آیا این می تونه باعث خطا بشه؟

چون سایت رو هنوز upload نکردم

bahar_engineer
شنبه 30 آبان 1388, 16:56 عصر
من هنوز دارم همون خطا رو می گیرم ... صفحه goback که در همین تاپیک یکی از دوستان به زبان c# گذاشتن رو به سایت اضافه کردم همون که خود بانک داده ... اما اصلا توی تایید پرداخت این خطا رو می ده که توی 2 پست قبلی گفتم(transaction.rar)... وقتی توی بانک اطلاعات رو وارد می کنم زیر فیلد نتیجه اش می نویسه خطای شبکه ... یعنی اصلا پرداخت انجام نمی شه و فکر نمی کنم مشکل از صفحه goback باشه (goback همون redirectURL هست)

برای پرداخت توی صفحه بانک اطلاعات فروشنده و مقدار پرداخت هم می زنه اما وقتی اطلاعات کارت و وارد می کنم پرداخت انجام نمی شه حتی reservationcode هم توی گریدویوش چاپ می شه

پس مشکلش چیه؟ از کارت منه؟

Aidin
شنبه 30 آبان 1388, 20:10 عصر
بانک آدرس سایت رو در هنگام عقد قرارداد از شما خواسته ؟

Alireza_Salehi
شنبه 30 آبان 1388, 21:28 عصر
بانک سامان باید حتما آی پی سایت شما رو ثبت کرده باشه (باید کتبا اعلام کنید) وگرنه هیچ تراکنشی Commit نخواهد شد... (یعنی وب سرویس عمل نخواهد کرد)
بنابراین اگر سرورتون اشتراکی هست مراقب باش تا هر وقت IP ش عوض شد به بانک اطلاع بدی...

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

در ضمن URL لوکال هم جواب نمیده....!!!!

kiosksoft
یک شنبه 01 آذر 1388, 18:20 عصر
دوست عزیز


چون سایت رو هنوز upload نکردم

آپلود کنید بعد تست رو انجام بدید .

bahar_engineer
شنبه 21 آذر 1388, 16:37 عصر
سلام

من سایت فروشگاه رو تموم کردم حالا می خوام تستش کنم آپلود کردم و با خطا برای webrefrence بانک سامان مواجه شدم

خطا اینه :
دلیلش چیه؟


Parser Error body {font-family:"Verdana";font-weight:normal;font-size: .7em;color:black;} p {font-family:"Verdana";font-weight:normal;color:black;margin-top: -5px} b {font-family:"Verdana";font-weight:bold;color:black;margin-top: -5px} H1 { font-family:"Verdana";font-weight:normal;font-size:18pt;color:red } H2 { font-family:"Verdana";font-weight:normal;font-size:14pt;color:maroon } pre {font-family:"Lucida Console";font-size: .9em} .marker {font-weight: bold; color: black;text-decoration: none;} .version {color: gray;} .error {margin-bottom: 10px;} .expandable { text-decoration:underline; font-weight:bold; color:navy; cursor:hand; } Server Error in '/' Application.

Parser Error

Description: An error occurred during the parsing of a resource required to service this request. Please review the following specific parse error details and modify your source file appropriately.

Parser Error Message: Unable to generate a temporary class (result=1).
error CS2001: Source file 'C:\WINDOWS\TEMP\58-d6bje.0.cs' could not be found
error CS2008: No inputs specified


Source Error:

[No relevant source lines]
Source File: /App_WebReferences/com/sb24/acquirer/ Line: 1

mahmood3d
شنبه 12 تیر 1389, 19:25 عصر
شرمنده که دیر شد...اینم از معایب قطع برقه
فایلی که میزارم شامل ایناس... راهنماش رو هم همراهش قرار میدم همین جا

with C#‎ --- dot net 2
php
ASP
delphi
java
perl
html

لینک دانلود همه گزینه های ذکر شده (http://www.4shared.com/file/154717399/68db0221/sample.html)

فایل راهنما (البته اینم واسه خود بانکه) (http://www.4shared.com/file/154761450/2fb660c0/help.html)


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

meisam1366
شنبه 07 خرداد 1390, 18:10 عصر
شرمنده که دیر شد...اینم از معایب قطع برقه
فایلی که میزارم شامل ایناس... راهنماش رو هم همراهش قرار میدم همین جا

with C# --- dot net 2
php
ASP
delphi
java
perl
html

لینک دانلود همه گزینه های ذکر شده (http://www.4shared.com/file/154717399/68db0221/sample.html)

فایل راهنما (البته اینم واسه خود بانکه) (http://www.4shared.com/file/154761450/2fb660c0/help.html)


این دو تا فایل از سرور 4shared پاک شدن

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

ممنون

ya30ien2
پنج شنبه 25 آبان 1391, 12:41 عصر
اگه کسی قبلا دانلود کرده لطفا آپ کنه