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;