Автоматическое пополнение через ЯндексДеньги на сайт, или HTTP-уведомления


Зачастую сайты, с которыми мне приходится работать, не просто информационные, а еще и осуществляющие некоторые финансовые операции со своим посетителями (клиентами, заказчикам). В простейшем виде - это операции пополнения/ снятия денег со счета. В большинстве случаев вывод денег осуществляется в ручном режиме, а вот зачисление их на счет – в автоматическом. И на немалом числе проектов мне приходится настраивать пополнение через ЯндексДеньги – как это делается – об этом и пойдет речь ниже.

Предупреждение: код, который будет выложен – это только пример. В данной заметке мы рассмотрим только общий принцип, не затрагивая вопросов безопасности – для получения общего представления о принципе работы. Если вам нужен рабочий код, который можно смело ставить на сайты по пополнению через ЯндексДеньги, то или дождитесь следующей статьи (в которой я рассмотрю вопрос безопасности) или обратитесь ко мне – за небольшую плату я все настрою прямо у вас на сайте. Или дам исчерпывающую консультацию (не бесплатно, разумеется). Скайп – up777up2, почта - up777up@yandex.ru – ответ будет в течение одних суток.

Итак, в Яндекс Деньгах реализована система уведомлений о входящих платежах на ваш кошелек. При переводе система может отправлять post-запрос на страницу, которую вы укажете. А вам остается разобрать его и занести в базу (пополнить счет юзера). Просто, не правда ли?

С документацией можно ознакомиться вот здесь, а я просто покажу самые распространенные параметры:

  • $_POST['amount'] – сумма
  • $_POST['operation_id'] – номер операции
  • $_POST['label'] – метка в форме (ид пользователя, к примеру)
А теперь, получив запрос, мы обрабатываем его. Да, кстати, не забудьте вставить адрес страницы со скриптом:



if ($_POST['amount']) {
$result= mysql_query("UPDATE ` users` SET `money` = `money` + '".$_POST['amount']."' WHERE ` users`.`id` = '".$_POST['label']."';");
}
Еще раз повторяю, не используйте этот «голый» код. Требуется минимум две проверки: по значениям полей unaccepted и codepro (чтобы точно знать, пришли ли деньги, нет лимитов или кода протекции), а также значение параметра sha1_hash (чтобы узнать, не подделан ли запрос).
Автор этого материала - я - Пахолков Юрий. Я оказываю услуги по написанию программ на языках Java, C++, C# (а также консультирую по ним) и созданию сайтов. Работаю с сайтами на CMS OpenCart, WordPress, ModX и самописными. Кроме этого, работаю напрямую с JavaScript, PHP, CSS, HTML - то есть могу доработать ваш сайт или помочь с веб-программированием. Пишите сюда.

тегизаметки, яндекс деньги, php, платежи




Отправляя сообщение я подтверждаю, что ознакомлен и согласен с политикой конфиденциальности данного сайта.




Подключение газовой плиты к баллону
Урок 13. Символьный тип данных (char) C#
Программа "Оракул Хайяма" - предсказания с помощью рубаи