Exemplo n.º 1
0
    LogToFile('Отсутствует подпись', $moduleName);
    exit;
}
$signature = $_REQUEST['Signature'];
// проверка наличия параметра Статуса операции
if (!isset($_REQUEST['Status'])) {
    LogToFile('Отсутствует статус оплаты', $moduleName);
    exit;
}
$status0 = $_REQUEST['Status'];
LogToFile('Статус оплаты заказа ' . $status0, $moduleName);
// $status0 может быть
// authorized - средства успешно заблокированы (выполнена авторизационная
//   транзакция)
// not authorized - средства не заблокированы (авторизационная транзакция не
//   выполнена) по ряду причин
// paid - оплачен (выполнена финансовая транзакция или заказ оплачен в
//   электронной платёжной системе)
// canceled - отменён (выполнена транзакция разблокировки средств или выполнена
//   операция по возврату платежа после списания средств)
// waiting - ожидается оплата выставленного счёта. Статус используется только
//   для оплат электронными валютами, при которых процесс оплаты может содержать
//   этап выставления черех систему Uniteller счёта на оплату и этап фактической
//   оплаты этого счета покупателем, которые существенно разнесены по времени
// проверка достоверности подписи
if (!Uniteller::IsSignatureCorrect($order_id, $status0, $signature)) {
    LogToFile('Подпись неверна', $moduleName);
    exit;
}
Uniteller::OrderPaymentCallback($order_id);
exit;