رفتن به مطلب

مشکل در اتصال به وبسرویس بانک پارسیان


پست های پیشنهاد شده

دوستان سلام !

داشتم یه پلاگین مینوشتم به مشکلی برخوردم . تجربه همچین مشکلی رو دارید ؟

[faultstring] => Server did not recognize the value of HTTP Header SOAPAction: .

لینک به ارسال

طبق آمورش های موجود و فایل سمپل فراخوانی کردم کلا :


include ( 'lib/nusoap/nusoap.php' );

لینک به ارسال

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

بعضا اشتباه در بخش دیگه ایی باعث بروز خطا در قسمت دیگه ایی از کد میشه

لینک به ارسال

این کد اتصال بنده هستش :


<?php
$salec = new nusoap_client('https://www.pec24.com/pecpaymentgateway/eshopservice.asmx');
$params = array(
'pin' => PIN,
'amount' => $_SESSION['DBSprice'],
'orderId' => $_SESSION['DBSrandcode'],
'callbackUrl' => SITEURL,
'authority' => 0,
'status' => 1
);
$sendParams = array($params);
$firstc = $salec -> call('PinPaymentRequest', $sendParams);
if ($salec->fault) {
echo '<h2>Fault</h2><pre>'; print_r ($firstc); echo '</pre>';
}
?>

لینک به ارسال

متد اتصال رو تغییر بدید و یا soap خود php هم تست بگیرید. چون این تکه کد موردخاصی نداره.

لینک به ارسال

متد اتصال رو تغییر بدید و یا soap خود php هم تست بگیرید. چون این تکه کد موردخاصی نداره.

آقا مرتضی یه توضیحی میدید ؟

لینک به ارسال

والا من میخوام کارمون درست بشه از آقای مهدی صفری همپرسیدم گفتن بعد pec24 باید : و یه عددی قرار داد ... امتحان کردم time out میداد اگر بتونین نمونه ای که کار میکنه بهم نشون بدید خیلی عالی میشه

لینک به ارسال

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

باتوجه به نوع سرور میزبان سایت و اینکه از کجاست، ممکنه نشه بهش وصل شد!

خیلی وقتها در حالت معمولی هم وصل نمیشه.

کلا یکبار باهاش کار کردم و اصلا خوش نیومد...

فکر نمیکنم نمونه ایی که درست کار کنه توی نت پیدا کنید. قبلا هم یکی از دوستان دنبال نمونه عملی بود. باید نوشته بشه.

لینک به ارسال

سلامـ

اینو برای پلاگین EDD نوشته بودم و کار هم می کرد، برای ارتباط اول هم یه اکسپشن گذاشتم چون یادمه زیاد ارور میداد، میتونی الان اینو برداری...در هر حال


$authority = 0 ; // default authority
$status = 1 ; // default status
$parsian_args = array(
'pin' => $edd_options['parsian_pin_code'] ,
'amount' => $price,
'orderId' => (int)$payment,
'callbackUrl' => $return_url,
'authority' => $authority,
'status' => $status
);
$sendParams = array($parsian_args) ;

// connect to webservice
try {
$opt = array(
'soap_version'=>SOAP_1_1,
'exceptions'=>true,
'trace'=>1,
'cache_wsdl'=>WSDL_CACHE_NONE
);
$client = @new SoapClient('https://www.pec24.com/pecpaymentgateway/eshopservice.asmx?wsdl', $opt);

} catch (Exception $e) {
//echo "<h2>Exception Error!</h2>";
//echo $e->getMessage();
edd_set_error('soap_fault', __('در برقراری ارتباط با سرور بانک خطایی رخ داده است.', 'edd'));
edd_send_back_to_checkout( '?payment-mode=' . $purchase_data['post_data']['edd-gateway'] );
}
//
try{
$res = $client->call('PinPaymentRequest', $sendParams);
}catch (SoapFault $sf) {
//echo $sf->faultcode."\n";
//echo $sf->faultstring."\n";
//$res = 0;
edd_set_error('soap_fault', __('در برقراری ارتباط با بانک خطایی رخ داده است.', 'edd'));
edd_send_back_to_checkout( '?payment-mode=' . $purchase_data['post_data']['edd-gateway'] );
}

ویرایش شده توسط abdy
لینک به ارسال

من فقط SoapClient رو با nusoap_client خودم جابجا کردم ایندفعه صفحه کلا سفید اومد بالا !

لینک به ارسال

متد پست بالاییتون رو بررسی کنید. بنظر کاملتر میاد(تست نکردم)

لینک به ارسال

من فقط SoapClient رو با nusoap_client خودم جابجا کردم ایندفعه صفحه کلا سفید اومد بالا !

اگه منظورت اینه که تو کدی که من گذاشتم این کار رو کردی، خُب آرگومان هایی به این دوتا میفرستیم با هم متفاوتند:


nusoap_client (mixed $endpoint, [bool $wsdl = false], [string $proxyhost = false], [string $proxyport = false], [string $proxyusername = false], [string $proxypassword = false], integer $timeout, [integer $response_timeout = 30], int $portName)

پس [احتمالن]:


@new nusoap_client('https://www.pec24.com/pecpaymentgateway/eshopservice.asmx?wsdl');

کافی باشه!

لینک به ارسال

با کد شما برگشتیم سر مشکلمون :


Fault
Array
(
[faultcode] => soap:Client
[faultstring] => Server did not recognize the value of HTTP Header SOAPAction: .
[detail] =>
)

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


<?php

$salec = @new nusoap_client('https://www.pec24.com/pecpaymentgateway/eshopservice.asmx?wsdl');
$PParams = array(
'pin' => PIN,
'amount' => $_SESSION['DBSprice'],
'orderId' => $_SESSION['DBSrandcode'],
'callbackUrl' => SITEURL,
'authority' => '0',
'status' => '1'
);
$sendParams = array($PParams);
$firstc = $salec -> call('PinPaymentRequest', $sendParams);
if ($salec->fault) {
echo '<h2>Fault</h2><pre>'; print_r ($firstc); echo '</pre>';
} else {
print_r ($firstc);
}

?>

لینک به ارسال

این آموزش رو رضا نوشته :

آموزش استفاده از درگاه پرداخت پارسیان

این کد رو تست کنید :



$salec = @new nusoap_client('https://www.pec24.com/pecpaymentgateway/eshopservice.asmx?wsdl','wsdl');
$err = $salec->getError();

if (!$err)
$soapProxy = $salec->getProxy() ;
else
die("خطا در اتصال به وبسرویس");

$PParams = array(
'pin' => PIN,
'amount' => $_SESSION['DBSprice'],
'orderId' => $_SESSION['DBSrandcode'],
'callbackUrl' => SITEURL,
'authority' => 0,
'status' => 1
);
$sendParams = array($PParams);
$firstc = $salec->call('PinPaymentRequest', $sendParams);
if ($salec->fault) {
echo '<h2>Fault</h2><pre>'; print_r ($firstc); echo '</pre>';
} else {
print_r ($firstc);
}

?>

پ ن : درگاه پارسیان یکی از بهترین درگاهها هست چون برای request و verify از وبسرویس استفاده میکنه

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

بدترین درگاهها هم متعلق به سرویس دامون بانک ملی و صادرات هست

ویرایش شده توسط ialireza
لینک به ارسال

با کمک شما دوستان این مرحله حل شد و کد authority رو میگیریم ولی مشکلی که هست اینه که وقتی که اینو میزاریم ته آدرس سیات و میدیریم برای پرداخت میگه درخواست شما نامعتبر مي باشد.

این هم کد :


<?php

$salec = new nusoap_client('https://www.pecco24.com/pecpaymentgateway/eshopservice.asmx?wsdl','wsdl');;
$PParams = array(
'pin' => PIN,
'amount' => $_SESSION['DBSprice'],
'orderId' => $_SESSION['DBSrandcode'],
'callbackUrl' => SITEURL,
'authority' => 0,
'status' => 1
);
$PParams = array($PParams);
$firstc = $salec -> call('PinPaymentRequest', $PParams);
if ($salec->fault) {
echo '<h2>Fault</h2><pre>'; print_r ($firstc); echo '</pre>';
} else {

//echo $firstc['status'];
//echo $firstc['authority'];
$parsianurl = "https://www.pec24.com/pecpaymentgateway/default.aspx?au=" . $firstc['authority'];
header("Location: $parsianurl");
// print_r ($PParams);
}

?>

لینک به ارسال

آدرس pec24 رو با pecco24 عوض کن


$go = "https://www.pecco24.com/pecpaymentgateway/?au=$firstc['authority']";
@header("Location: {$go}");

ویرایش شده توسط ialireza
لینک به ارسال
  • 3 هفته بعد...

تشکر میکنم از همه دوستان که راهنمایی کردن واقعا همتو زحت کشیدین

دوستان کا با موفقیت انجام شد ایه نمونه آنلاینش :

http://pay.myclock.ir/

لینک به ارسال
  • 3 هفته بعد...

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

با کلیک روی انصراف هم به یه صفحه سفید بر می گرده.

ویرایش شده توسط Anisi
لینک به ارسال
  • 11 ماه بعد...

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

sad.gif

وقتی اطلاعات خرید و وارد میکنم ارور میده که پین فروشنده درست نمیباشد در صورتی که من pin و درست وارد کردم چند بار هم چکش کردن نمیدونم چرا تو برگشت از بانک $status و 22 ,$authority و 0 برمیگردونه

لطفا اگه اطلاعاتی دارید دریغ نکنید،پیشاپیش از کمکتون ممنونم

:)

لینک به ارسال

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

آی پی تون رو درست ثبت کردید؟

لینک به ارسال
  • 4 سال بعد...

سلام 

دوستان من یه سایت php نیازمندی دارم با اینکه به صورت پیش فرض درگاه بانک پارسیان به وسیله طراح وجود داشت اما متاسفانه کار نمیکنه و طراح هم پشتیبانی خاصی به من نمیده میخواستم ببینم کسی هست برای من مشل سایت رو رفع کنه یا خیر

ممنون میشم

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

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

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...