巴克莱ePDQ和PHP-拒绝付款?

巴克莱ePDQ和PHP-拒绝付款?,php,payment-gateway,payment-processing,Php,Payment Gateway,Payment Processing,我正在使用巴克莱的CPI ePDQ系统从我的网站上获取付款 我已经阅读了这些文档,并且在cURL示例中使用了相同的代码,因此我将付款发送到付款页面 我的问题有两个部分 1. Payments are always declined 2. I have configured the post url as http://example.com/payment-response.php with an echoing out $_POST - which returns nothing 我做错什么

我正在使用巴克莱的CPI ePDQ系统从我的网站上获取付款

我已经阅读了这些文档,并且在
cURL
示例中使用了相同的代码,因此我将付款发送到付款页面

我的问题有两个部分

1. Payments are always declined
2. I have configured the post url as http://example.com/payment-response.php with an echoing out $_POST - which returns nothing
我做错什么了吗?我看到有人提到使用.htpasswd,但我不确定

似乎没有任何理由拒绝付款/卡

这是我的要求:

$url = 'https://secure2.epdq.co.uk/cgi-bin/CcxBarclaysEpdqEncTool.e';
$params = "clientid=xxxxxx&password=xxxxxxxxx&oid=".$orderId."&chargetype=Auth&total=".$total."&currencycode=826";
$user_agent = "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)"; $ch = curl_init();
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS,$params);
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); // this line makes it work under https
$result=curl_exec($ch); 

<FORM action="https://secure2.epdq.co.uk/cgi-bin/CcxBarclaysEpdq.e" method="POST">
<?php print "$result"; ?>
<INPUT type="hidden" name="returnurl" value="http://example.com/payment-response.php"> 
<INPUT type="hidden" name="merchantdisplayname" value="TEST">
<INPUT TYPE="submit" VALUE="purchase">
</FORM>
$url='1!'https://secure2.epdq.co.uk/cgi-bin/CcxBarclaysEpdqEncTool.e';
$params=“clientid=xxxxxx&password=xxxxxxxxx&oid=“.$orderId.”和chargetype=Auth&total=“.$total.”和currencycode=826”;
$user_agent=“Mozilla/4.0(兼容;MSIE 5.01;Windows NT 5.0)”$ch=curl_init();
卷曲设置($ch,卷曲设置桩,1);
curl_setopt($ch,CURLOPT_POSTFIELDS,$params);
curl_setopt($ch,CURLOPT_URL,$URL);
curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,2);
curl_setopt($ch,CURLOPT_USERAGENT,$user_agent);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,FALSE);//这一行使它在https下工作
$result=curl\u exec($ch);
payment response.php
-当var\u转储
$\u POST
时返回一个空白数组

是否有其他方法从ePDQ获取post数据


谢谢

好的,看来您需要先激活该帐户。巴克莱银行在默认情况下不会激活该账户,因此您必须填写表格告知他们

整个上午都在想这个问题


可能更容易给他们打电话,因为他们可以看到对系统的所有请求以及您的请求产生的所有错误。我必须遵循的一些步骤是:

1) 下载扩展名:巴克莱卡ePDQ CPI支付模块 magentocommerce.com/magento connect/config/extension/2050/barclaycard epdq cpi支付模块发布

如果无法从freegento.com/ddl-magento-extension.php下载,请使用magento Connect 1.0的密钥

2) 将所有应用程序复制到magento安装后,如果您有自己的模板,请确保从以下位置移动文件夹epdq: 设计/前端/默认/模板/epdq 致: 设计/前端/您的软件包/默认/模板/epdq

如果键入以下内容,您可以检查它是否位于正确的位置: your-domain.com/epdq/cpi/redirect/

3) 使用附加文件更改app/code/community/Barclaycard/Epdq/Model/Cpi.php (我只是用Markus和validBen来改变它)

4) 转到barclays页面添加您的url: secure2.mde.epdq.co.uk/cgi-bin/ccxbarclaysepdqadmin.e

您必须使用商户或客户ID以及从巴克莱获得的凭证

在允许的URL处添加: your-domain.com/epdq/cpi/redirect/ 发布URL your-domain.com/epdq/cpi/postrl/

不要预先得到文档中没有的最后一个“/”

添加任何你喜欢的通行短语

“是”和“paswords和mail”中的“继续”选项

5) 转到模块的方法付款配置,并添加与您在表单中添加的相同的详细信息

6) 你要照你的心意行争竞的事

我拿了一杯啤酒,在喝之前给了帕卡马马一些慷慨的药水,然后我用巴克利的信用卡信息测试了付款

祝你好运

爱德华多


!!如何配置ePDQ]

巴克莱的回复只有在设置为发送到需要验证的url时才有效,您设置了吗?(有一个单独的配置url,他们应该给你;我的在下面)还有他们的示例代码有一个PHP+fsockopen示例我有url,我已经在表单中配置了所有细节,即
密码:
允许的URL:
发布URL:
等。因此我需要对
付款响应.php
进行身份验证?是的,如果您在浏览器中访问payment-response.php,例如,它需要提示进行身份验证。好的。如果你以前没有使用过,仍然很难诊断。如果他们能给出比“谢绝”更好的回答就好了