/** * Принимает от assist результаты платежа, производит зачисление. * * @param array $req массив $_POST с данными. */ function checkdeposit($req) { $this->log->writeln('Поступление платежа.'); $this->log->writevar($req); if ($req['merchant_id'] != self::MERCHANT_ID) { $this->fail(self::ERR_MERCHANT_ID); } $hash_x = $req['merchant_id'] . $req['ordernumber'] . $req['amount'] . $req['currency'] . $req['orderstate']; $hash = strtoupper(md5(strtoupper(md5($this->_secret) . md5($hash_x)))); if ($hash != $req['checkvalue']) { $this->fail(self::ERR_HASH); } if ($req['responsecode'] == 'AS000' && $req['orderstate'] == 'Approved') { $card_account = new card_account(); $billing_no = $card_account->checkPayment($req['ordernumber']); if (!$billing_no) { $this->fail(self::ERR_ORDERNUM); } $amm = $req['orderamount']; $descr = "CARD номер счета в ассисте {$req['billnumber']} с карты {$req['meantypename']} {$req['meannumber']} " . "сумма - {$req['orderamount']} {$req['ordercurrency']}, " . "обработан {$req['packetdate']}, номер покупки - {$req['ordernumber']}"; if ($error = $this->deposit($op_id, $billing_no, $amm, $descr, 6, $req['orderamount'])) { $this->fail(self::ERR_DEPOSIT, $error); } } $this->success($req['billnumber'], $req['packetdate']); }
/** * Зачисление средств при поступлении "Payment Confirmation" от Paymaster. * * @see /income/pm.php * @param array $req параметры запроса. * @return string Сообщение об ошибке */ function checkdeposit($req) { $this->log = new log('pmpay/checkdeposit-%d%m%Y.log', 'a', '%d.%m.%Y %H:%M:%S : '); $this->log->writevar($req); $hash_str = $req['LMI_MERCHANT_ID'] . ';' . $req['LMI_PAYMENT_NO'] . ';' . $req['LMI_SYS_PAYMENT_ID'] . ';' . $req['LMI_SYS_PAYMENT_DATE'] . ';' . $req['LMI_PAYMENT_AMOUNT'] . ';' . $req['LMI_CURRENCY'] . ';' . $req['LMI_PAID_AMOUNT'] . ';' . $req['LMI_PAID_CURRENCY'] . ';' . $req['LMI_PAYMENT_SYSTEM'] . ';' . $req['LMI_SIM_MODE'] . ';' . $this->key; $hash_str = base64_encode(md5($hash_str, true)); if ($req['LMI_HASH'] == $hash_str) { $error = $this->_setDeposit($req); } else { $error = 'Bad LMI_HASH'; } $this->log->writeln($error ? $error : 'YES'); $this->log->writeln(); return $error; }
<?php define('NO_CSRF', 1); require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/stdf.php'; require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/platipotom.php'; require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/log.php'; $platipotom = new platipotom(); $log = new log('platipotom/%d%m%Y.log'); $log->writeln('----- ' . date('d.m.Y H:i:s')); $log->writevar($_GET); $result = $platipotom->order(); $log->writeln('----- ' . (isset($result['status']) && $result['status'] == 1 ? 'SUCCESS' : 'FAIL')); $log->writeln(); header('Content-Type: application/json'); echo json_encode($result);
<?php define('NO_CSRF', 1); require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/stdf.php"; require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/yandex_kassa.php"; require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/log.php"; $yandex_kassa = new yandex_kassa(); $log = new log('ykassa/%d%m%Y.log'); $log->writeln('----- ' . date('d.m.Y H:i:s')); $log->writevar($_POST); $action = __paramInit('string', null, 'action'); //@todo: выставляем тестовый режим для валидации по IP //после тестирования резерва БС убрать /* $scid = __paramInit('string', null, 'scid'); $is_test = $scid == yandex_kassa::SCID_SBR_TEST; if($is_test) $yandex_kassa->setTest($is_test); */ $result = array(); if ($action == 'checkOrder') { $result = $yandex_kassa->order(false); } if ($action == 'paymentAviso') { $result = $yandex_kassa->order(true); } $log->writeln('----- ' . (isset($result['message']) ? $result['message'] : 'YES')); $log->writeln(); echo "<?xml version=\"1.0\" encoding=\"windows-1251\"?>"; ?> <<?php
$post = $_POST; $get = $_GET; require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/stdf.php"; require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/pskb.php"; require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/log.php"; $src = __paramValue('int', $get['res']); $state = __paramValue('int', $post['state']); $lc_id = __paramValue('int', $post['account']); $log_data = array('GET' => $get, 'POST' => $post); if (!pskb::validateCardRequest($post)) { $src = 2; $state = -999; $log_data['err'] = array('src' => $src, 'state' => $state); } $log = new log("pskb_cards/income-" . SERVER . '-%d%m%Y.log', 'a', '%d.%m.%Y %H:%M:%S : ' . $_SERVER['REMOTE_ADDR'] . ' : '); $log->writevar($log_data); $pskb = new pskb(); $_lc = $pskb->getLCbyLCId($lc_id); $err_msg = "Неизвестная ошибка"; if ($src == 2) { if ($state && in_array($state, array_keys(pskb::$card_messages))) { $err_msg = pskb::$card_messages[$state]; } if (!in_array($state, array(2, -999))) { $pskb->upLC(array('state' => 'err', 'stateReason' => $err_msg), $_lc['lc_id']); } } if ($src === 1 && defined('PSKB_TEST_MODE')) { $lc = new pskb_lc(json_encode($_lc)); $lc->id = $_lc['lc_id']; $lc->state = 'cover';
private function _log($message = '', $var = null) { if (!$this->_log) { return; } if ($message) { $this->_log->writeln($message); } if ($var) { $this->_log->writevar($var); } }