2013-09-10 3 views
0

В настоящее время у меня есть сайт, который требует интеграции Sagepay, предыдущие сайты успешно интегрировали sagepay, однако ни один из них не использовал Zend, к сожалению, нет документации по использованию Zend с Sagepay, однако я нашел модуль которые могут работать по этой ссылке:Интеграция Sagepay в Zend

http://code.google.com/p/zend-service-sagepay/source/browse/trunk/library/My/Sagepay.php?r=2

что бы лучше практика в данном случае, я знаю SagePay предлагает несколько методов для обработки платежей, хотя больше он интегрирован с сайтом, тем лучше.

ответ

1

Поскольку API Sagepay просто доступен через кучу запросов на завивки, вы можете просто использовать объекты Zends Client и Request. Например:

Определите, какие данные вы хотели бы пост -

// Set the post data 
$data = array(
    'VPSProtocol'  => '', 
    'TxType'   => '', 
    'Vendor'   => '', 
    'VendorTxCode'  => '', 
    'Amount'   => '', 
    'Currency'   => '', 
    'Description'  => '', 
    'CardHolder'  => '', 
    'CardNumber'  => '', 
    'StartDate'   => '', 
    'ExpiryDate'  => '', 
    'IssueNumber'  => '', 
    'CV2'    => '', 
    'CardType'   => '', 
    'AuthCode'   => '', 
    'BillingSurname' => '', 
    'BillingFirstNames' => '', 
    'BillingAddress1' => '', 
    'BillingAddress2' => '', 
    'BillingCity'  => '', 
    'BillingPostCode' => '', 
    'BillingCountry' => '', 
    'BillingPhone'  => '', 
    'DeliverySurname' => '', 
    'DeliveryFirstNames'=> '', 
    'DeliveryAddress1' => '', 
    'DeliveryAddress2' => '', 
    'DeliveryCity'  => '', 
    'DeliveryPostCode' => '', 
    'DeliveryCountry' => '', 
    'DeliveryPhone'  => '', 
    'CustomerEmail'  => '', 
    'NotificationUrl' => '' 
) 

Затем создайте новый объект клиента и установите адаптер «CURL» -

$client = new Client(); 
$client->setAdapter(new Curl()); 

И, наконец, создать новый запросить объект и отправить клиентский объект на запрос.

$request = new Request(); 
$request->setUri('https://test.sagepay.com/gateway/service/vspdirect-register.vsp'); 
$request->setMethod(Request::METHOD_POST); 
$request->setContent(http_build_query($data)); 

$response = $client->dispatch($request); 
var_dump($response); 
die; 

А читать может this.

Смежные вопросы