Перейти к содержимому


Фотография

Merchant result.php


  • Пожалуйста, авторизуйтесь для ответа.
3 ответов в данной теме

#1 Новичок dimitron (WMID 231733815767 )

  • Группа: Пользователи
  • сообщений 4
  • Регистрация: 21-января 15
  • Webmoney BL

Отправлено 24 января 2015 - 13:49

Здравствуйте, пытаюсь интегрировать свой сайт с Merchant. Почти все получилось. И вот с какой я столкнулся проблемой.

 

Вот пример файла result.php который я немного под себя изменил:

<?php
    /*подключаем БД*/
    if (! defined ( 'DATALIFEENGINE' )) {
    	die ( "Hacking attempt!" );
    }
    include (ENGINE_DIR . '/data/config.php');    
    include (ENGINE_DIR . '/classes/mysql.php');
    include (ENGINE_DIR . '/data/dbconfig.php');
    include (ENGINE_DIR . '/modules/functions.php');
    
    /*Номер кошелька и секретный код*/
    $wm_purce = "Z111179592314";
    $LMI_SECRET_KEY = "TrfdlfFSsds589sd63sdsad";
    
    
    if( isset($_POST['LMI_PREREQUEST']) && $_POST['LMI_PREREQUEST'] == 1){
        
        /*как я понял при переходе на платеж, возвращаем сервису строку YES 
если кошелек указан верно и идентификатор пользователя присутствует в 
дополнительном поле, если же нет платеж прерывается и выбрасывает на 
страницу fail.html*/
        if($_POST['LMI_PAYEE_PURSE'] == $wm_purce and isset($_POST['FIELD_USERID'])){
            echo 'YES';
        }else{
            exit();
        }
    }
    else{   
        /*теперь тут выполняем код если $_POST['LMI_PREREQUEST'] = 0 */
    }
?>

И я не пойму почему индикатор предварительного запроса всегда равен 1.

Также не понят как вообще это срабатывает, и как это все протестировать.


Сообщение отредактировал dimitron: 24 января 2015 - 13:49

    • 0
  • Наверх

#2 Знаток ^-^ (WMID 273407224562 )

  • Группа: Пользователи
  • сообщений 6 059
  • Регистрация: 10-сентября 13
  • Webmoney BL

Отправлено 24 января 2015 - 16:31

Здравствуйте, идентификатор предварительного запроса говорит, что это предварительный запрос, по которому магазин должен сказать мерчанту, принимать средства или нет.
Когда второй раз обращается по result_url, то его уже нет и мерчант только лишь уведомляет, что средства он передал на Ваш кошелёк.

И проверить только кошелёк - этого мало. Ещё нужно проверить сумму и, желательно, номер заказа/ счёт пользователя в соответствии с данными магазина. Для этого в параметре LMI_PAYMENT_NO передать нужно соответствующие цифры.

К прочтению: Автоматический прием WM-платежей. Сервис WebMoney Merchant.


Сообщение отредактировал ^-^: 24 января 2015 - 16:32

Бесплатный SSL на 3 мес. / Сертификат SSL от 299 руб.
    • 0
  • Наверх

#3 Новичок 165718651245 (WMID 165718651245 )

  • Группа: Пользователи
  • сообщений 1
  • Регистрация: 02-ноября 15
  • Webmoney BL

Отправлено 13 ноября 2015 - 12:06

Здравствуйте, идентификатор предварительного запроса говорит, что это предварительный запрос, по которому магазин должен сказать мерчанту, принимать средства или нет.
Когда второй раз обращается по result_url, то его уже нет и мерчант только лишь уведомляет, что средства он передал на Ваш кошелёк.

И проверить только кошелёк - этого мало. Ещё нужно проверить сумму и, желательно, номер заказа/ счёт пользователя в соответствии с данными магазина. Для этого в параметре LMI_PAYMENT_NO передать нужно соответствующие цифры.

К прочтению: Автоматический прием WM-платежей. Сервис WebMoney Merchant.


Сообщение отредактировал amChange.ru: 30 августа 2016 - 15:57

    • 0
  • Наверх

#4 Знаток ^-^ (WMID 273407224562 )

  • Группа: Пользователи
  • сообщений 6 059
  • Регистрация: 10-сентября 13
  • Webmoney BL

Отправлено 13 ноября 2015 - 19:11

Здравствуйте!

Сессия работает на стороне пользователя одна, а на стороне Merchant WebMoney другая - данные в $_SESSION['inch_ktam'] для пользователя и мерчанта различны.

Это Вы учитываете?


Сообщение отредактировал ^-^: 13 ноября 2015 - 19:11

Бесплатный SSL на 3 мес. / Сертификат SSL от 299 руб.
    • 0
  • Наверх