Автор Тема: выплаты freekassa  (Прочитано 772 раз)

0 Пользователей и 1 Гость просматривают эту тему.

milenaАвтор темы

  • *
  • Оффлайн
  • Награды Более 5 лет на форуме !!! Более 10 сообщений
  • Дата регистрации: Апр. 2018
  • Сообщений: 25
  • Страна: by
  • Репутация +1/-0
  • Пол: Женский
выплаты freekassa
« : 23 Июня 2021, 11:29:31 »
привет,
не работает автовыплаты через freekassa,
после заказа выплат ,выдаёт такую надпись (Системная ошибка #1021)
что сделать что заработали авто-выплаты?

<div class="s-bk-lf"> 
<div class="acc-title">Заказ выплаты</div>
</div>
<div class="silver-bk">
<BR />
<?PHP
$_OPTIMIZATION["title"] = "Аккаунт - Заказ выплаты";
$usid = $_SESSION["user_id"];
$usname = $_SESSION["user"];

$db->Query("SELECT * FROM db_users_b WHERE id = '$usid' LIMIT 1");
$user_data = $db->FetchArray();

$db->Query("SELECT * FROM db_config WHERE id = '1' LIMIT 1");
$config_site = $db->FetchArray();

$status_array = array( 0 => "Проверяется", 1 => "Выплачивается", 2 => "Отменена", 3 => "Выплачено");
# Минималка серебром!
$minPay = 1;

?>
<style>
button, input, select, textarea {
    font-family: auto;
    font-size: large;
    line-height: normal;
   color: black;
}
</style>
<center>Заказ выплаты:</center><BR />

<?PHP
   # Заносим выплату
   if(isset($_POST['payment'])){
      if(!empty($_POST['purse'])){
         $currency = $_POST['currency'];
         $sum = intval($_POST['sum']);
         $purse = $_POST['purse'];
         if($sum >= $minPay) {
            if($sum <= $user_data['money_p']){
            # Проверяем на существующие заявки
               $db->Query("SELECT COUNT(*) FROM db_payment WHERE user_id = '$usid' AND (status = '0' OR status = '1')");
               if($db->FetchRow() == 0){
               ### Делаем выплату ###   
                  $sum = round($sum, 2);
                  $sum_pay = round( ($sum / $config_site['ser_per_wmr']), 2);
               ### Проверка баланса ###
                  $wallet_id = $config->WalletID;
                  $apiKey = $config->KeyApi;
                  $data = array(
                     'wallet_id' => $wallet_id,
                     'sign' => md5($wallet_id.$apiKey),
                     'action' => 'get_balance'
                  );
                  $ch = curl_init();
                  curl_setopt($ch, CURLOPT_URL, 'https://wallet.free-kassa.ru/api_v1.php');
                  curl_setopt($ch, CURLOPT_HEADER, 0);
                  curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
                  curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
                  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
                  curl_setopt($ch, CURLOPT_POST, 1);
                  curl_setopt($ch, CURLOPT_TIMEOUT, 10);
                  curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
                  curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
                  $result = trim(curl_exec($ch));
                  $c_errors = curl_error($ch);
                  curl_close($ch);
                  $answer = json_decode($result);
                  $balance = $answer->data->RUR;
                  if(($sum_pay + 10) <= $balance){
                     $data = array(
                        'wallet_id'=>$wallet_id,
                        'purse'=>$purse,
                        'amount'=>$sum_pay,
                        'desc'=>'Выплата пользователю '.$usname.' с проекта '.$_SERVER["HTTP_HOST"],
                        'currency'=>$currency,
                        'sign'=>md5($wallet_id.$currency.$sum_pay.$purse.$apiKey),
                        'action'=>'cashout',
                     );
                     $ch = curl_init();
                     curl_setopt($ch, CURLOPT_URL, 'https://wallet.free-kassa.ru/api_v1.php');
                     curl_setopt($ch, CURLOPT_HEADER, 0);
                     curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
                     curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
                     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
                     curl_setopt($ch, CURLOPT_POST, 1);
                     curl_setopt($ch, CURLOPT_TIMEOUT, 10);
                     curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
                     curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
                     $result = trim(curl_exec($ch));
                     $c_errors = curl_error($ch);
                     curl_close($ch);
                     $answer = json_decode($result);
                     $payment_id = $answer->data->payment_id;
                           
                  # Получаем статус выплаты
                     $data = array(
                        'wallet_id'=>$wallet_id,
                        'payment_id'=>$payment_id,
                        'sign'=>md5($wallet_id.$payment_id.$apiKey),
                        'action'=>'get_payment_status',
                     );
                     $ch = curl_init();
                     curl_setopt($ch, CURLOPT_URL, 'https://wallet.free-kassa.ru/api_v1.php');
                     curl_setopt($ch, CURLOPT_HEADER, 0);
                     curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
                     curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
                     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
                     curl_setopt($ch, CURLOPT_POST, 1);
                     curl_setopt($ch, CURLOPT_TIMEOUT, 10);
                     curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
                     curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
                     $result = trim(curl_exec($ch));
                     $c_errors = curl_error($ch);
                     curl_close($ch);
                     $answer = json_decode($result);
                     $status = $answer->data->status;
                     if ($answer == 'Completed') {      
                     # Снимаем с пользователя
                        $db->Query("UPDATE db_users_b SET money_p = money_p - '$sum', payment_sum = payment_sum + '$sum_pay', pay_points = pay_points - '$sum_pay' WHERE id = '$usid'");
                                    
                     # Вставляем запись в выплаты
                        $da = time();
                        $dd = $da + 60*60*24*15;
                                    
                        $ppid = $arTransfer["historyId"];
                                       
                        $db->Query("INSERT INTO db_payment (user, user_id, purse, sum, valuta, serebro, payment_id, date_add, status) VALUES ('$usname','$usid','$purse','$sum_pay','RUB', '$sum','$ppid','".time()."', '3')");
                                       
                        $db->Query("UPDATE db_stats SET all_payments = all_payments + '$sum_pay' WHERE id = '1'");
                        echo '<center><font color = "green">Выплачено!</font></center><BR />';
                     } else {
                        echo '<center><font color = "red">Внутренняя ошибка - попробуйте через 10-15 секунд или сообщите о ней администратору!</font></center><BR />';   
                     }
                  }else echo '<center><font color = "red">Системная ошибка #1021. Сообщите о ней администратору</font></center><BR />';
               }else echo '<center><font color = "red">У вас имеются необработанные заявки. Дождитесь их выполнения.</font></center><BR />';
            }else echo '<center><font color = "red">Вы указали больше, чем имеется на вашем счету</font></center><BR />';
         }else echo '<center><font color = "red">Минимальная сумма для выплаты составляет '.$minPay.' руб!</font></center><BR />';
      }else echo '<center><font color = "red">Введите номер счета</font></center><BR />';
   }
?>

<form action="" method="post">
<table width="99%" border="0" align="center">
  <tr>
    <td><font color="#000;">Выберите систему для вывода</font>: </td>
   <td>
      <select name="currency">
         <option value="1">Webmoney WMR</option>
         <option value="2">Webmoney WMZ</option>
         <option value="45">Яндекс.Деньги</option>
         <option value="63">QIWI кошелек</option>
         <option value="133">FK WALLET RUB</option>
         <option value="116">Bitcoin</option>
         <option value="106">OOOPAY RUR</option>
         <option value="109">OOOPAY EUR</option>
         <option value="87">OOOPAY USD</option>
         <option value="69">Perfect Money EUR</option>
         <option value="64">Perfect Money USD</option>
         <option value="84">Мобильный Платеж МТС</option>
         <option value="83">Мобильный Платеж Билайн</option>
         <option value="132">Мобильный Платеж Tele2</option>
         <option value="82">Мобильный Платеж Мегафон</option>
         <option value="137">Мобильный Платеж МегаФон Северо-Западный филиал</option>
         <option value="138">Мобильный Платеж МегаФон Сибирский филиал</option>
         <option value="139">Мобильный Платеж МегаФон Кавказский филиал</option>
         <option value="140">Мобильный Платеж МегаФон Поволжский филиал</option>
         <option value="141">Мобильный Платеж МегаФон Уральский филиал</option>
         <option value="142">Мобильный Платеж МегаФон Дальневосточный филиал</option>
         <option value="143">Мобильный Платеж МегаФон Центральный филиал</option>
      </select>
   </td>
  </tr>
  <tr>
    <td><font color="#000;">Номер счета/кошелек получателя</font>: </td>
   <td><input type="text" name="purse" size="15"/></td>
  </tr>
  <tr>
    <td><font color="#000;">Сумма:</font> </td>
   <td><input type="text" name="sum" id="sum" value="" size="15" /></td>
  </tr>
  <tr>
    <td colspan="2" align="center"><input type="submit" name="payment" value="Заказать выплату" style="height: 30px; margin-top:10px;" /></td>
  </tr>
</table>
</form>
<center>&#169; [url=https://psweb.ru][/url]</center>
<script language="javascript">PaymentSum(); SetVal();</script>

<table cellpadding='3' cellspacing='0' border='0' bordercolor='#336633' align='center' width="99%">
  <tr>
    <td colspan="5" align="center"><h4>Последние 10 выплат</h4></td>
    </tr>
  <tr>
    <td align="center" class="m-tb">Серебро</td>
    <td align="center" class="m-tb">Получаете</td>
   <td align="center" class="m-tb">Кошелек</td>
   <td align="center" class="m-tb">Дата</td>
   <td align="center" class="m-tb">Статус</td>
  </tr>
  <?PHP
 
  $db->Query("SELECT * FROM db_payment WHERE user_id = '$usid' ORDER BY id DESC LIMIT 20");
 
   if($db->NumRows() > 0){
 
        while($ref = $db->FetchArray()){
      
      ?>
      <tr class="htt">
          <td align="center"><?=$ref["serebro"]; ?></td>
          <td align="center"><?=sprintf("%.2f",$ref["sum"] - $ref["comission"]); ?> <?=$ref["valuta"]; ?></td>
          <td align="center"><?=$ref["purse"]; ?></td>
         <td align="center"><?=date("d.m.Y",$ref["date_add"]); ?></td>
          <td align="center"><?=$status_array[$ref["status"]]; ?></td>
        </tr>
      <?PHP
      
      }
 
   }else echo '<tr><td align="center" colspan="5">Нет записей</td></tr>'
 
  ?>

</table><div class="clr"></div>
</div>
 

whoohaw

  • *
  • *
  • Оффлайн
  • Награды Более 6 лет на форуме !!! Более 250 сообщений За помощь пользователям За финансовую помощь форуму !!! Репутация более 15 За время в онлайне на форуме Более 10 созданных тем
  • Дата регистрации: Апр. 2018
  • Расположение: Тверь
  • Возраст: 35
  • Сообщений: 320
  • Страна: ru
  • Поблагодарили: 27 раз(а)
  • Репутация +17/-1
  • Пол: Мужской
  • Дата рождения:
    1988-09-21
    Социальные сети:
    ВКонтакте
выплаты freekassa
« Ответ #1 : 23 Июня 2021, 11:37:37 »
Наши экстрасенсы в отпуске. Могли бы Вы направить код? В свободный час смогу посмотреть и возможно, определить причину.
 

milenaАвтор темы

  • *
  • Оффлайн
  • Награды Более 5 лет на форуме !!! Более 10 сообщений
  • Дата регистрации: Апр. 2018
  • Сообщений: 25
  • Страна: by
  • Репутация +1/-0
  • Пол: Женский
выплаты freekassa
« Ответ #2 : 23 Июня 2021, 14:28:11 »
Наши экстрасенсы в отпуске. Могли бы Вы направить код? В свободный час смогу посмотреть и возможно, определить причину.

код
 

whoohaw

  • *
  • *
  • Оффлайн
  • Награды Более 6 лет на форуме !!! Более 250 сообщений За помощь пользователям За финансовую помощь форуму !!! Репутация более 15 За время в онлайне на форуме Более 10 созданных тем
  • Дата регистрации: Апр. 2018
  • Расположение: Тверь
  • Возраст: 35
  • Сообщений: 320
  • Страна: ru
  • Поблагодарили: 27 раз(а)
  • Репутация +17/-1
  • Пол: Мужской
  • Дата рождения:
    1988-09-21
    Социальные сети:
    ВКонтакте
выплаты freekassa
« Ответ #3 : 23 Июня 2021, 14:50:44 »
Так там же все просто. В коде есть упоминание. Вероятно, что на балансе не хватает средств. Средств по коду должно быть на 10 руб больше, чем заказываешь. То есть заказываешь 5 руб, на балансе должно быть не менее 15 руб.
 
Пользователи, которые поблагодарили этот пост: milena

milenaАвтор темы

  • *
  • Оффлайн
  • Награды Более 5 лет на форуме !!! Более 10 сообщений
  • Дата регистрации: Апр. 2018
  • Сообщений: 25
  • Страна: by
  • Репутация +1/-0
  • Пол: Женский
выплаты freekassa
« Ответ #4 : 23 Июня 2021, 18:53:37 »
$balance = $answer->data->RUR;
                  if(($sum_pay + 10) <= $balance){
Так там же все просто. В коде есть упоминание. Вероятно, что на балансе не хватает средств. Средств по коду должно быть на 10 руб больше, чем заказываешь. То есть заказываешь 5 руб, на балансе должно быть не менее 15 руб.
если про это
 $balance = $answer->data->RUR;
                  if(($sum_pay + 10) <= $balance){
то у меня вместо +10,
написано +1,
на балансе больше 50 р
делаю выплату  на яндекс или киви на от 5 р или 20 р,
то выдаёт надпись "Системная ошибка"
 

whoohaw

  • *
  • *
  • Оффлайн
  • Награды Более 6 лет на форуме !!! Более 250 сообщений За помощь пользователям За финансовую помощь форуму !!! Репутация более 15 За время в онлайне на форуме Более 10 созданных тем
  • Дата регистрации: Апр. 2018
  • Расположение: Тверь
  • Возраст: 35
  • Сообщений: 320
  • Страна: ru
  • Поблагодарили: 27 раз(а)
  • Репутация +17/-1
  • Пол: Мужской
  • Дата рождения:
    1988-09-21
    Социальные сети:
    ВКонтакте
выплаты freekassa
« Ответ #5 : 23 Июня 2021, 19:46:23 »
Попробуй отдельно вывести баланс, видит ли скрипт его. Или там по 0. Если по 0, то коннекта нет.
 
Теги: