Руководство по программному взаимодействию с платежной системой «Mone X y»





Скачать 307.91 Kb.
НазваниеРуководство по программному взаимодействию с платежной системой «Mone X y»
страница10/10
Дата публикации20.08.2013
Размер307.91 Kb.
ТипРуководство
100-bal.ru > Информатика > Руководство
1   2   3   4   5   6   7   8   9   10
Блок формирования выписки -->

            DateFrom

             DateTo '

           
page


            rows // Кол-во на страницу

            Currency

     




 
Форма ответа:


     

            API name

            Authentification token

     


      Блок кодов ошибок -->

            Error message

     


     

           

                  TransactionID

                  Payer

                  Payee

                  Transaction sum

                  Balance after transaction

                  Transaction description

                  Transaction order ID

                  Transaction date

           

            ...

     


     


           
Page


            Count transactions

     


 


 

  Пример

 
ini_set('safe_mode','0');
ini_set('max_execution_time',30);
set_time_limit(30);

require_once('xml2array.php');

class T_MONEXY {
 
var $ApiName  = 'test';
var $SecretKey = ''; //
var $ApiURL = 'https://www.monexy.com/xml/server.php';
var $ApiHash;
 
 
  function SaveLog($msg) {
    $fd = fopen('monexy.log', "a");    
    $str = "[" . date("Y/m/d h:i:s", mktime()) . "] " . $msg;                
    fwrite($fd, $str . "\n");                    
    fclose($fd);  
  }
 
                          
  /* Change string encoding */
  function _change_encoding($text, $encoding, $entities = false) {
    $text = $entities ? htmlspecialchars($text, ENT_QUOTES) : $text;
    return mb_convert_encoding($text, $encoding, 'UTF-8');
  }
 
 
  function getmicrotime() {
    list($usec, $sec) = explode(" ", substr(microtime(), 2));
    return substr($sec.$usec, 0, 15);
  }
 
 
    // Создаем MkTime и ApiHash
  function MkTime(){
   $MkTime = $this->getmicrotime();
   $this->ApiHash = sha1($this->ApiName . ':' . $this->SecretKey . ':' . $MkTime);
   return $MkTime;
  }
 
 
  function _request($xml, $parse = true) {
   global $lang;
    
    $ch = curl_init();
   $url_query[req] = $this->_change_encoding(urlencode($xml), 'UTF-8');
    curl_setopt($ch, CURLOPT_URL, $this->ApiURL);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $url_query);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_TIMEOUT, 30);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
    $result = curl_exec($ch);
 
  if (curl_errno($ch) != 0) {  
   $result  = "".curl_errno($ch)."\n";
   $result .= "".curl_error($ch)."\n";  
  };
  curl_close($ch);
  if ($parse) {  
    $result = urldecode($result);
    $this->SaveLog($result);
    $array = array();
    $array = xml2array($result);
           
    echo '
';
    print_r($array);
    echo '
';
           
    if(is_array($array) && @$array['monexyApi_attr']['mtime'] != '' and
       isset($array['monexyApi']['Auth']['ApiHash']) && $array['monexyApi']['Auth']['ApiHash'] != ''){
       
    $Hash = sha1($this->ApiName.':'.$this->SecretKey.':'.$array['monexyApi_attr']['mtime']);
        if($array['monexyApi']['Auth']['ApiHash'] == $Hash){
            return $array;
        } else {             
          echo 'Fail ApiHash';             
          exit();             
        }
    } else {
    $_SESSION['ERROR_MSG'] = 'Fail data MONEXY.com';
        echo 'Fail data MONEXY.com';
         exit();
    }
           
  } else
    return $result;
}
 
 
    /**************************************/
    /*      Отправить номер телефона      */
    /*      для получения SMS пароля      */
    /**************************************/
   
    function UserAuth($PhoneNumber) {
             
  $xml = ''.PHP_EOL
        .' '.PHP_EOL
     .'  '.$this->ApiName.''.PHP_EOL
              .'  '.$this->ApiHash.''.PHP_EOL
              .'  '.$PhoneNumber.''.PHP_EOL
     .'  '.PHP_EOL
        .'
'.PHP_EOL       
           .'
';
        $this->SaveLog($xml);
  return $this->_request($xml);
}
 
 
    /**************************************/
    /*        Отправить SMS пароль        */
    /*         для входа в Monexy         */
    /**************************************/
   
function UserLogin($PhoneNumber,$PhoneSms) {
             
  $xml = ''.PHP_EOL
        .' '.PHP_EOL
     .'  '.$this->ApiName.''.PHP_EOL
              .'  '.$this->ApiHash.''.PHP_EOL
              .'  '.$PhoneNumber.''.PHP_EOL
        .'
'.PHP_EOL
        .' '.PHP_EOL
        .'  '.$PhoneSms.''.PHP_EOL
        .'
'.PHP_EOL
           .'
';
        $this->SaveLog($xml);
  return $this->_request($xml);
}
 
 
    /**************************************/
    /*        Отображение баланса         */
    /*       всех кошельков Monexy        */
    /**************************************/
   
function Balance($PhoneNumber,$UserSesson) {
             
  $xml = ''.PHP_EOL
        .' '.PHP_EOL
     .'  '.$this->ApiName.''.PHP_EOL
              .'  '.$this->ApiHash.''.PHP_EOL
              .'  '.$PhoneNumber.''.PHP_EOL
     .'  '.$UserSesson.''.PHP_EOL
        .'
'.PHP_EOL       
           .'
';
        $this->SaveLog($xml);
  return $this->_request($xml);
}
 
    /**************************************/
    /*        Отображение баланса         */
    /*       всех кошельков Monexy        */
    /*              без SMS               */
    /**************************************/
   
function Balance2($PhoneNumber,$UserApiBCode) {
             
  $xml = ''.PHP_EOL
        .' '.PHP_EOL
     .'  '.$this->ApiName.''.PHP_EOL
              .'  '.$this->ApiHash.''.PHP_EOL
              .'  '.$PhoneNumber.''.PHP_EOL
     .'  '.$UserApiBCode.''.PHP_EOL
        .'
'.PHP_EOL
           .'
';
        $this->SaveLog($xml);
  return $this->_request($xml);
}
 
    /**************************************/
    /*        Перевод с кошелька          */
    /*             на кошелек             */
    /**************************************/
   
function Payment_Req($PhoneNumber,$UserSesson,$OrderId,$Amount,$OrderDesc,$PayeeLogin,$PayeeCurrency,$PayerCurrency,$AmountType=0,$test=1) {
    
  $xml = ''.PHP_EOL
        .' '.PHP_EOL
     .'  '.$this->ApiName.''.PHP_EOL
              .'  '.$this->ApiHash.''.PHP_EOL
              .'  '.$PhoneNumber.''.PHP_EOL
     .'  '.$UserSesson.''.PHP_EOL
        .'
'.PHP_EOL
        .'
'.PHP_EOL
        .'  '.$OrderId.''.PHP_EOL
        .'  '.$OrderDesc.''.PHP_EOL
        .' 
'.$PayeeLogin.'
'.PHP_EOL
        .' 
'.$PayeeCurrency.'
'.PHP_EOL
        .' 
'.$PayerCurrency.'
'.PHP_EOL
        .'  '.$Amount.''.PHP_EOL
        .'  '.$AmountType.''.PHP_EOL // 0 - в валюте отправителя 1 - в валюте получателя
        .'  '.$test.''.PHP_EOL // 0 - тест  1 - платеж
        .'
'.PHP_EOL
           .'
';
        $this->SaveLog($xml);
  return $this->_request($xml);
}

    /**************************************/
    /*        Перевод с кошелька          */
    /*             на корпоративный кошелек             */
    /**************************************/
   
function Payment_Req($PhoneNumber,$UserSesson,$OrderId,$Amount,$OrderDesc,$PayeeCard,$PayeeCurrency,$PayerCurrency,$AmountType=0,$test=1)

{
    
  $xml = ''.PHP_EOL
        .' '.PHP_EOL
     .'  '.$this->ApiName.''.PHP_EOL
              .'  '.$this->ApiHash.''.PHP_EOL
              .'  '.$PhoneNumber.''.PHP_EOL
     .'  '.$UserSesson.''.PHP_EOL
        .'
'.PHP_EOL
        .'
'.PHP_EOL
        .'  '.$OrderId.''.PHP_EOL
        .'  '.$OrderDesc.''.PHP_EOL
        .' 
'.$PayeeCard.''.PHP_EOL
        .' 
'.$PayeeCurrency.'
'.PHP_EOL
        .' 
'.$PayerCurrency.'
'.PHP_EOL
        .'  '.$Amount.''.PHP_EOL
        .'  '.$AmountType.''.PHP_EOL // 0 - в валюте отправителя 1 - в валюте получателя
        .'  '.$test.''.PHP_EOL // 0 - тест  1 - платеж
        .'
'.PHP_EOL
           .'
';
        $this->SaveLog($xml);
  return $this->_request($xml);
}


 
 
    /**************************************/
    /*        Подтверждение платежа       */
    /*             SMS кодом              */
    /**************************************/
   
function Payment_Conf($PhoneNumber,$UserSesson,$PaymentId,$PaymentSms) {
                 
  $xml = ''.PHP_EOL
        .' '.PHP_EOL
     .'  '.$this->ApiName.''.PHP_EOL
              .'  '.$this->ApiHash.''.PHP_EOL
              .'  '.$PhoneNumber.''.PHP_EOL
     .'  '.$UserSesson.''.PHP_EOL
        .'
'.PHP_EOL
        .'
'.PHP_EOL
        .' 
'.$PaymentId.'
'.PHP_EOL
        .' 
'.$PaymentSms.'
'.PHP_EOL
        .'
'.PHP_EOL
           .'
';
        $this->SaveLog($xml);
  return $this->_request($xml);
}
 
 
    /**************************************/
    /*          История операций          */
    /**************************************/
   
function History($PhoneNumber,$UserSesson,$Currency,$DateFrom,$DateTo,$rows=10) {
             
  if(isset($DateFrom) && $DateFrom != ''){
   $DateFrom = date_format(date_create($DateFrom),"Y.m.d");
   $DateTo   = date_format(date_create($DateTo),"Y.m.d");
  } else {
   $DateFrom = '';
   $DateTo   = '';
  }
 
  $xml = ''.PHP_EOL
        .' '.PHP_EOL
     .'  '.$this->ApiName.''.PHP_EOL
              .'  '.$this->ApiHash.''.PHP_EOL
              .'  '.$PhoneNumber.''.PHP_EOL
     .'  '.$UserSesson.''.PHP_EOL
        .'
'.PHP_EOL
        .' '.PHP_EOL
        .'  '.$DateFrom.''.PHP_EOL
        .'  '.$DateTo.''.PHP_EOL
        .' 
1
'.PHP_EOL
        .'  '.$rows.''.PHP_EOL
        .'  '.$Currency.''.PHP_EOL
        .'
'.PHP_EOL
           .'
';
           
        $this->SaveLog($xml);
  return $this->_request($xml);
}
 
}
 
$MONEXY = new T_MONEXY();
 
?>
1   2   3   4   5   6   7   8   9   10

Похожие:

Руководство по программному взаимодействию с платежной системой «Mone X y» iconРуководство по установке сдо 13 Установка при помощи Инсталлятора 13
Технические требования к оборудованию и системному программному обеспечению сдо 6
Руководство по программному взаимодействию с платежной системой «Mone X y» iconКомиссия по проблемам безопасности граждан и взаимодействию с системой...
Общественная экспертиза уровня организации и безопасности дорожного движения в регионах России
Руководство по программному взаимодействию с платежной системой «Mone X y» iconКомиссия по проблемам безопасности граждан и взаимодействию с системой...
Общественная экспертиза уровня организации и безопасности дорожного движения в регионах России
Руководство по программному взаимодействию с платежной системой «Mone X y» iconСтруктура пояснительной записки к дипломному проекту для студентов...
Апк, средства разработки (если не предполагается их анализ и выбор), требования к разрабатываемому программному продукту, требования...
Руководство по программному взаимодействию с платежной системой «Mone X y» iconМосковские новости, N18, 21. 05. 2004, с 20
Рпц и других религиозных конфессий на территории РФ. Особое внимание уделяется их взаимодействию с социальными институтами армией,...
Руководство по программному взаимодействию с платежной системой «Mone X y» iconПрика з
Комитета по свободе совести, взаимодействию с религиозными организациями Республики Дагестан и методики проведения конкурса на замещение...
Руководство по программному взаимодействию с платежной системой «Mone X y» iconРуководство: Общее руководство праздника осуществляется учителем...
Использование средств физического воспитания в организации активного отдыха укрепление здоровья учащихся
Руководство по программному взаимодействию с платежной системой «Mone X y» iconИнструкция слушателя для работы с Системой Управления Обучением
По дисциплине «Обществознание» представлены конкурсные задания, которые частично автоматически проверяются системой, а частично –...
Руководство по программному взаимодействию с платежной системой «Mone X y» iconИнструкция слушателя для работы с Системой Управления Обучением
По дисциплине «Обществознание» представлены конкурсные задания, которые частично автоматически проверяются системой, а частично –...
Руководство по программному взаимодействию с платежной системой «Mone X y» icon1. Руководство племенной работой. 1 Руководство племенной работой...
Коучинг с помощью нлп: Практическое руководство по достижению поставленных целей / Джозеф О'Коннор, Андреа Лейджес. — Пер с англ....
Руководство по программному взаимодействию с платежной системой «Mone X y» iconУчитель информатики и икт спицкая Лилия Вячеславовна
Обобщить и систематизировать знания учащихся по аппаратному, программному обеспечению компьютеров и системам счисления
Руководство по программному взаимодействию с платежной системой «Mone X y» iconСовета Законодательного Собрания Иркутской области по взаимодействию...
Ательного Собрания Иркутской области по взаимодействию с представительными органами муниципальных образования Иркутской области от...
Руководство по программному взаимодействию с платежной системой «Mone X y» iconСовета Законодательного Собрания Иркутской области по взаимодействию...
Тельного Собрания Иркутской области по взаимодействию с представительными органами муниципальных образований Иркутской области от...
Руководство по программному взаимодействию с платежной системой «Mone X y» iconРуководство по изучению дисциплины «Операционные системы, среды и оболочки»
Руководство необходимо для общего ознакомления с дисциплиной и содержит сведения
Руководство по программному взаимодействию с платежной системой «Mone X y» icon1 Основные сведения об измерениях
Базовой системой любой автоматизированной системы управления технологическими процессами (асу тп) является системой автоматического...
Руководство по программному взаимодействию с платежной системой «Mone X y» icon7. Руководство практикой, обязанности руководителей практики
Настоящее «Руководство по качеству» не может быть полностью или частично воспроизведено, тиражировано и распространено без разрешения...


Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
100-bal.ru
Поиск