Обновление SagePay с 2.22 до 3.0 без поля склепа

Меня попросили помочь обновить реализацию пользовательского платежа SagePay с протокола версии 2.22 до версии 3.0.

Я пытаюсь следовать инструкциям на этой странице: https://www.sagepay.co.uk/support/12/36/upgrading-from-2-22-to-3-00-a-brief-overview

Первая проблема, с которой я столкнулся, заключается в том, что нигде в существующем коде нет поля «Крипта». На самом деле «данные» отправляются с использованием CURL через SSL с помощью этих строк (и других):

// Set the URL
curl_setopt ($curlSession, CURLOPT_URL, $url);
// No headers, please
curl_setopt ($curlSession, CURLOPT_HEADER, 0);
// It's a POST request
curl_setopt ($curlSession, CURLOPT_POST, 1);
// Set the fields for the POST
curl_setopt ($curlSession, CURLOPT_POSTFIELDS, $data);
// Return it direct, don't print it out
curl_setopt($curlSession, CURLOPT_RETURNTRANSFER,1);
// This connection will timeout in 60 seconds
curl_setopt($curlSession, CURLOPT_TIMEOUT,60);
//The next two lines must be present for the kit to work with newer version of cURL
//You should remove them if you have any problems in earluer version of cURL
curl_setopt($curlSession, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curlSession, CURLOPT_SSL_VERIFYHOST, 1);

Возможно, мне просто нужно изменить это:

$ProtocolVersion = "2.22";

К этому:

$ProtocolVersion = "3.0";

И добавьте новые обязательные поля. И работа сделана?

Благодарю вас!


person Claud    schedule 08.05.2015    source источник


Ответы (1)


Если в вашем существующем коде нет поля crypt, вполне вероятно, что вы вообще не используете протокол Form, поэтому изменение кодировки с XOR на шифрование AES вас не беспокоит.

2.22 до 3.00 — это больший скачок, чем 2.23–3.00, поэтому основное изменение, которое вам нужно будет сделать при переходе с 2.22 на 3.00, — это разделение полей адреса на BillingAddress1, BillingAddress2 и т. д. Есть некоторые дополнительные функции, которые вы можете получить, отправив некоторые из необязательные поля, но это будет на ваше усмотрение.

Также обратите внимание, что Sage Pay возвращает некоторые дополнительные данные в ответах, поэтому стоит убедиться, что вы можете справиться с этим (или использовать его!).

person Rik Blacow    schedule 09.05.2015
comment
Спасибо. Я поиграю с некоторыми тестовыми платежами и посмотрю, что получится. О результатах отчитаюсь. - person Claud; 11.05.2015