Securepay не работает

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

Обнаружена ошибка PHP

Серьезность: Уведомление

Сообщение: попытка получить свойство необъекта

Имя файла: library / securepay.php

Номер строки: 479

В securepay.php 479 номер строки

($this->_TranslateServerCode($this->ResponseTree->Status->statusCode) == SECUREPAY_STATUS_OK);

и полная функция ниже

function TestConnection() {
$this->RequestXml = $this->_ComposeEcho();
$this->ResponseXml = $this->_Dispatch($this->RequestXml);
$this->ResponseTree = simplexml_load_string($this->ResponseXml);
return ($this->_TranslateServerCode($this->ResponseTree->Status->statusCode) == SECUREPAY_STATUS_OK);
}

Ниже приведен мой пример кода:

включают в себя ( ‘securepay.php’);

$sp = new SecurePay('ABC0001','abc123', TRUE);
$sp->TestMode();
$sp->TestConnection();
$sp->Cc = 4111111111111111;
$sp->ExpiryDate = '07/20';
$sp->ChargeAmount = 1500;
$sp->ChargeCurrency = 'AUD';
$sp->Cvv = 321;
$sp->OrderId = 'ORD34234';

if ($sp->Valid()) {
$response = $sp->Process();
if ($response == SECUREPAY_STATUS_APPROVED) {
echo "Transaction was a success\n";
} else {
echo "Transaction failed with the error code: $response\n";
echo "XML Dump: " . print_r($sp->ResponseXml,1) . "\n";
}
} else {
die("Your data is invalid\n");
}

Пожалуйста, помогите мне, как решить это.

1

Решение

Вы можете использовать следующий код curl REST API:

$ch = curl_init ();
curl_setopt ( $ch, CURLOPT_URL, 'https://test.api.securepay.com.au/xmlapi/payment' );
curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, false );
curl_setopt ( $ch, CURLOPT_SSL_VERIFYHOST, 2 );
curl_setopt ( $ch, CURLOPT_FOLLOWLOCATION, false );
curl_setopt ( $ch, CURLOPT_MAXREDIRS, 1 );
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, true );
curl_setopt ( $ch, CURLOPT_HTTPHEADER, array (
'Content-Type: application/json'
) );

curl_setopt ( $ch, CURLOPT_POST, true );
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $jsonRequest );

curl_setopt ( $ch, CURLOPT_CONNECTTIMEOUT, 10 );
curl_setopt ( $ch, CURLOPT_TIMEOUT, 30 );

$result = curl_exec ( $ch );

Здесь $ jsonRequest будет состоять из данных запроса, таких как «оплата кредитной картой». Вы можете использовать следующую ссылку, чтобы найти данные запроса JSON и проверить их.
Среда тестирования SecurePay Sandbox

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]