0

我正在研究一个自定义支付解决方案,并且一直坚持如何通知 magento 付款被接受或拒绝。

我有一个PaymentController.php文件,需要输入代码来处理这个。

支付网关在下面提供HTTP GET请求。

http://www.websitename.co.uk/mygateway/payment/response?SessionID=&Note=&Tariff=&Status=

  1. SessionID 是支付网关分配的唯一 ID

  2. 注意是magento生成的orderID

  3. 关税是以便士为单位的订单价格,即 100 便士

  4. Status是支付的状态,大概有10种不同的类型,Status=100是支付成功,Status=200是支付失败

所以可能是http://www.websitename.co.uk/mygateway/payment/response?SessionID=123456&Note=1000051&Tariff=300&Status=100

我不确定如何创建代码来处理这个获取请求并计算出状态

我需要将代码放在paymentcontroller

public function responseAction() {
    if($this->getRequest()->isPost()) {

        /*
        /* Your gateway's code to make sure the reponse you
        /* just got is from the gatway and not from some weirdo.
        /* This generally has some checksum or other checks,
        /* and is provided by the gateway.
        /* For now, we assume that the gateway's response is valid
        */

        $validated = true;
        $orderId = '';

        if($validated) {
4

1 回答 1

0

使用Zend_Http_Client类。

你会在这个来自 zend 的小教程中找到你需要知道的一切:

http://framework.zend.com/manual/1.12/de/zend.http.client.html

一种快速而肮脏的方法是:

$client = new Zend_Http_Client('http://www.websitename.co.uk/mygateway/payment/response?SessionID=123456&Note=1000051&Tariff=300&Status=100');
$response = $client->request();

然后检查响应和你的好去。祝你好运!

于 2013-07-10T23:43:00.187 回答