Я не очень понимаю как работают дополнение User balance и его функциями
Я пытаюсь настроить поле денежного перевода(покупки)
от текущего пользователя к автору поста
я попытался через массив
$args = array(
'pay_summ' => 100,
'pay_type' => 'donate',
'pay_systems' => array('user_balance'),
);
echo rcl_get_pay_form($args);
Но я так и не понял куда именно отправляются эти деньги
И как проверить мне денежную систему без подключения к реальному кошельку
Поэтому можете ли вы объяснить мне как это сделать?
Здравствуйте.
Тему перенес в кастомизации.
К реальным деньгам строчка записи в БД отношения не имеет. Это просто виртуальные цифры.
Пример реального подключения разбирается в этой статье
Как работает?
1. Реальные деньги переходят в кошелек выбранного платежного агрегатора (ссылка на статью выше).
2. Платежная система говорит сайту "я приняла столько-то" и сайт в БД записывается факт оплаты на сумму оплаты.
3. Сайт оперирует виртуальными цифрами но не более пополненного значения, в то время когда вся переведенная сумма уже лежит в кошельке выбранного платежного агрегатора
Пункт 2 можно сделать так - пополнить в админке в списке пользователей. Но сами понимаете что это просто начислит виртуальные цифры. В платежный агрегатор реальные деньги вам не придут. Вы задали вопрос - вы, думаю на этом отрезке находитесь, исключили первый пункт.
p.s. переводы между пользователями есть в дополнении Money Wallet Recall
- подглядите как это сделано там.
p.s. переводы между пользователями есть в дополнении Money Wallet Recall
Вы не можете просматривать опубликованные ссылки- подглядите как это сделано там.
Я бы посмотрел не будь он в разделе vip статус который стоит денег.
Пример реального подключения разбирается в этой статье
Вы не можете просматривать опубликованные ссылки
Сейчас я решил не лезть сильно глубоко в эти дебри и просто подключил для тестов
Ну я смог через админку пополнить счет
Но я так и не понял как мне перевести с сумму с одного счета на другой
массив
$args = array(
'pay_summ' => 100,
'pay_type' => 'donate',
'pay_systems' => array('user_balance'),
);
echo rcl_get_pay_form($args);только лишь списывает деньги со счета но я не понимаю куда он их перечисляет.
zeni1agent сказал(а)
echo rcl_get_pay_form($args);
Данная функция выводит форму на проведение платежа определенного типа, оплата проходит, деньги поступают на баланс платежной системы.
Чтобы производить какие то действия после совершения оплаты необходимо подключить свою функцию к хуку rcl_success_pay, например, вышлем письмо:
add_action('rcl_success_pay','send_mail_new_donate',10);
function send_mail_new_donate($payData){
//проверяем тип платежа, нам нужен 'donate'
if($payData->pay_type != 'donate') return false;
//указываем админский емейл сайта
$email = get_option('admin_email');
//заголовок письма
$subject = 'Новый Донат!';
//готовим текст письма
$textMail = '<p>Пользователь: '.get_the_author_meta('display_name',$payData->user_id).'</p>';
$textMail .= '<p>Сумма платежа: '.$payData->pay_summ.'</p>';
$textMail .= '<p>Система оплаты: '.$payData->current_connect.'</p>';
rcl_mail($email,$subject,$textMail);
}там же можем добавить алгоритм оплаты чего либо на сайте или пополнение баланса другого пользователя
Можете если не трудно тогда ответить еще на несколько вопросов по этой теме.
1 Для получения баланса определенного пользователя нужна rcl_get_user_balance($user_id)?
2 Можно ли совершить перевод только между кошельками пользователей Webmoney с небольшим процентом себе
Что бы не проверять в ручную каждый запрос на вывод?
3 И как вообще сделать запрос на вывод средств пользователя.
zeni1agent сказал(а)
3 И как вообще сделать запрос на вывод средств пользователя.
Это есть в дополнении Money Wallet Recall
ну а дешево и сердито (хотя вип аккаунтом закрыто более 30-ти дополнений - берите тот доп - все там решено и обкатано годами. Что велосипед изобретать?) - юзер пишет в ЛК вам и говорит - "хочу вывести средства, столько то, на такой то кошелек"
Вы переводите ему и списываете в списке пользователей в админке уменьшая баланс
p.s. не сваливаем кучу вопросов в одну тему. Если на вопрос заданный в первом топике вы получили ответ и все ясно - скажите, я закрою тему. По новому вопросу создаем новую тему
Это есть в дополнении Money Wallet Recall
Вы не можете просматривать опубликованные ссылкину а дешево и сердито (хотя вип аккаунтом закрыто более 30-ти дополнений - берите тот доп - все там решено и обкатано годами. Что велосипед изобретать?) - юзер пишет в ЛК вам и говорит - "хочу вывести средства, столько то, на такой то кошелек"
Вы переводите ему и списываете в списке пользователей в админке уменьшая баланс
Все было бы намного проще будь у меня деньги. Но их у меня нет от слова совсем. Дальше продолжать не буду а то это довольно быстро перейдет в нытье и вынос мозга.
Поэтому приходится делать все самому криво косо и как получится.
p.s. не сваливаем кучу вопросов в одну тему. Если на вопрос заданный в первом топике вы получили ответ и все ясно - скажите, я закрою тему. По новому вопросу создаем новую тему
Да знаю что вопрос довольно обширный. Но я подумал что засерать форум кучей второстепенных вопросов как то неприлично.
Ладно один из 3 вопросов я смог решить
Я оставлю решение здесь может кому оно и пригодится в будущем
<?php
if ($_POST['Test_num']){
$F1 = get_current_user_id() ;
$F2 = rcl_get_user_balance($F1);
$F3 = $F2 - $_POST['Test_num'];
$R0 = get_post($post->ID, ARRAY_A);
$R1 = $R0['post_author'];
$R2 = rcl_get_user_balance($R1);
$R3 = $R2 + $_POST['Test_num'];
if (!($F1 == $R1) and $F3 > 0){
rcl_update_user_balance( $F3, $F1, $comment = '' );
rcl_update_user_balance( $R3, $R1, $comment = '' );
} else {
echo "ошибка";
}
}
?>
<form method="POST">
<input name="Test_num" type="number">
<input type="submit">
</form>
Но я так и не понял как делать запрос на вывод средств.