Поскольку 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.