Обучение/Помощь новичкам | Юкасса пополнение
Alex_S , у тебя должен быть на сервере расположен файл с кодом куда стучится юмани после успешной оплаты.
Пример кода такой:
Это только лишь пример не более. У тебя код может быть совершенно другой.
Данный код вырван из плагина оплаты через Юмани в AlphaCMS.
________
посл. ред. 27.10.2021 в 05:21; всего 1 раз(а); by DenSBK
Пример кода такой:
php
REQUIRE_ONCE (ROOT.'/users/shop/yoomoney/plugins/sett.php'); //Настройка Юмани
REQUIRE_ONCE (ROOT.'/users/shop/yoomoney/class/Yoomoney.php'); //Класс для работы с платежной системой.
$yoomoney = new Yoomoney($ym['YM_ID'], $ym['YM_KEY_SECRET']); //Инициализация класса
/// Проверяем подпись платежа
if (!$yoomoney->sign($_POST)) exit;
$account = intval($_POST['label']);
$sum = abs($_POST['amount']);
if ($account > 0){
//Зачисление платежа на сайте
$rub = DB::GET_STRING("SELECT * FROM `USERS` WHERE `ID` = '".$account."' LIMIT 1");
DB::GET_SET("UPDATE `USERS` SET `MONEY` = `MONEY` + '".$sum."' WHERE `ID` = '".$rub['ID']."' LIMIT 1");
//Отправляем уведомление и зачислении тут же можно вносить логи в журнал и т.д.
$message = "Пользователь ".$rub['LOGIN']." пополнил счет на ".$sum." RUB через систему ЮMoney .";
DB::GET_ADD("INSERT INTO `MAIL_MESSAGE` (`USER_ID`, `MY_ID`, `TIME`, `MESSAGE`, `USER`) VALUES ('".$rub['ID']."', '".CONFIG('SYSTEM')."', '".TIME()."', '".$message."', '".CONFIG('SYSTEM')."')");
} Это только лишь пример не более. У тебя код может быть совершенно другой.
Данный код вырван из плагина оплаты через Юмани в AlphaCMS.
________
посл. ред. 27.10.2021 в 05:21; всего 1 раз(а); by DenSBK
В том архиве что ты скинул есть файл "callback.php" возможно он и обрабатывает сам платеж на стороне твоего сервера. Но работы с пользовательскими данными я там не увидел. Но по крайней мере там есть проверка статуса платежа если я правильно понимаю принцип работы данного плагина:
В заключении скажу, копай в сторону обработчика у себя. Повторюсь тебе Юмани как минимум должны направить ответ на сервер после платежа успешный он или нет и данные (Идентификатор пользователя, товара, транзакция и прочее.) на основании чего ты и делаешь проверки.
php
$payment = $notification->getObject();
if($payment->getStatus() === PaymentStatus::SUCCEEDED) {
//Где то тут должна быть обработка платежа. Точно не скажу возможно строчка ниже так как я не ванга и не знаю структуру твоего движка и как там обрабатываются пользовательские данные.
$Profile->payCallBack( $payment->metadata->id_uniq );
header("HTTP/1.0 200 OK");
} В заключении скажу, копай в сторону обработчика у себя. Повторюсь тебе Юмани как минимум должны направить ответ на сервер после платежа успешный он или нет и данные (Идентификатор пользователя, товара, транзакция и прочее.) на основании чего ты и делаешь проверки.
Alex_S , в бд запись идёт о пополнении?
Стр.: 1, 2