Forum Webscript.Ru
Общие => Веб-технологии => Тема начата: stark от 03 Сентября 2003, 09:51:53
-
Народ помогите разобраться в документаций от https://merchant.webmoney.ru/conf/guide.asp
Мн нужно написать скрипт работающий через систему merchant.webmoney.ru
1. Оплата
2. результат оплаты(success , fail)
причем , что бы в случае success сообщалось от кого произведена оплата с занисением в базу данных, то же самое и для fail???
хотя бы небольшой пример, что бы знать в ком направлений двигаться!
Если конкретезировать то мне не понятно выражение по адресу:
https://merchant.webmoney.ru/conf/guide.asp#notification
а именно
"....Если флаг передачи параметров установлен, веб-сайт продавца должен вернуть сторку "YES" в ответе для того, чтобы сервис Merchant WebMoney Transfer смог продолжить выполнение платежа. Если веб-сайт продавца вернет что-либо другое - платеж выполнен не будет а ответ будет показан покупателю в сообщении об ошибке."
что за флаг, как он передеаться , как его проверить?!!!
может кто знает, ответьте пожалуйста!!!
-
В простом случае нужно 4 скрипта:
1. Который будет создавать форму, отправляемую на вебмани
кликнув кнопку этой формы юзер попадет на сайт вебманей
2. Вторым скриптом, который тебе следует написать - это скрипт обработки запроса системы вебмани. То есть когда юзер уже на сайте веб мани собирается оплатить услуги, система сама, без его участия, через сокеты (если ты знаешь что это такое) запросит твой скрипт - причем 2 раза (хотя это в установках можно изменить вроде).
Первый раз - предварительный запрос, перед процессом оплаты.
Система веб-мани в запросе через POST передаст твоему скрипту данные о юзере. Твоя задача - проверить эти данные и если все верно - вывести строку "YES":
if (isset($_POST[\'LMI_PREREQUEST\']) && $_POST[\'LMI_PREREQUEST\'] == 1) {
// обрабатываем предзапрос
// проверяешь данные, если нет ошибок - YES
if ($is_error == false) {
echo "YES";
} else {
echo "NO";
}
exit;
}
Если твой скрипт выдал YES - значит система вебмани віполнит перевод и снова через сокеты запросит твой скрипт для передачи данных о транзакции. Вот эти данные (какие посчитаешь нужными и записывай в БД:
if (isset($_POST[\'LMI_PREREQUEST\']) && $_POST[\'LMI_PREREQUEST\'] == 1) {
// обрабатываем предзапрос
// проверяешь данные, если нет ошибок - YES
if ($is_error == false) {
echo "YES";
} else {
echo "NO";
}
exit;
} else {
// это уже запрос после оплаты. Считываем данные из POST и записываем в БД:
..... // здесь все на твое усмотрение
exit;
}
еще 2 скрипта, которіе тебе нужно сделать - это скрипты, на которые будет пересылаться юзер в случае успешной/неудачной оплаты. Там все просто
флаг устанавливается в форме настроек продавца - заходишь на https://merchant.webmoney.ru/ проходишь авторизацию и изменяешь насиройки
-
Спасибо Макс! Очень подробно все изъяснил!
Сегодня все попробую исходя из твоего ответа.
Очень помог.