За последние 24 часа нас посетили 17554 программиста и 1675 роботов. Сейчас ищут 1958 программистов ...

Как получить архив платежей Liqpay с помощью php

Тема в разделе "Прочие вопросы по PHP", создана пользователем sokol86922, 24 май 2018.

  1. sokol86922

    sokol86922 Активный пользователь

    С нами с:
    3 мар 2017
    Сообщения:
    46
    Симпатии:
    2
    Делал свою платежную кнопку Liqpay на своем сайте. Работает. Брал инфо с сайта Liqpay API.
    Сейчас появилась необходимость просмотреть в своей админке архив платежей за последний месяц . Второй день сижу не получается. либо выдает ошибку либо {"result":"success","data":[]} но ни каких данных не выдает. Кто то делал? можете подсказать или показать часть готового кода. Но не тот который на сайте Liqpay API ))))

    вроде как выдает успешный результат {"result":"success","data":[]} но нет данных
    делаю примерно так .. Как получить список платежей в своей админке?
    PHP:
    1. $json_string = json_encode(
    2.   array(
    3.    'action'    => 'reports',
    4.    'version'   => '3',
    5.    'public_key' => $public_key,
    6.    'date_from' => '1525996799',
    7.    'date_to'   => '1527155927'
    8.    )
    9.    );
    10.   $data = base64_encode($json_string);
    11.   echo $data;
    12.   $signature = base64_encode( sha1(
    13.   $private_key .
    14.   $data .
    15.   $private_key
    16.   , 1 ));
    PHP:
    1. echo'<form method="POST"   class="all2" accept-charset="utf-8" action="https://www.liqpay.ua/api/request" target="_blank">
    2.    <input type="hidden" name="data" value="';
    3.     echo $data;
    4.      echo'" />
    5.    <input type="hidden" name="signature" value="';
    6.      echo $signature;
    7.      echo'" />
    8. ......кнопка перехода....
    9.    echo '</form> ';
     
  2. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.861
    Симпатии:
    752
    Адрес:
    Татарстан
    Ну так изучайте API и применяйте.....
     
  3. acho

    acho Активный пользователь

    С нами с:
    28 дек 2016
    Сообщения:
    854
    Симпатии:
    210
    Адрес:
    Санкт-Петербург
    Я бы на твоём месте не парился, а скачал их либу. Она то небось должна работать как надо. Да и проще это
     
  4. sokol86922

    sokol86922 Активный пользователь

    С нами с:
    3 мар 2017
    Сообщения:
    46
    Симпатии:
    2
    Спасибо, я вот пытаюсь не получается. Оплата все ок проходит работает, а вот посмотреть историю не получается
     
  5. acho

    acho Активный пользователь

    С нами с:
    28 дек 2016
    Сообщения:
    854
    Симпатии:
    210
    Адрес:
    Санкт-Петербург
    Так это ты не их либу используешь же. Я вот смотрю доку, там есть пример кода с их классом:
    PHP:
    1. $liqpay = new LiqPay($public_key, $private_key);
    2. $res = $liqpay->api("request", array(
    3. 'action'    => 'reports',
    4. 'version'   => '3',
    5. 'date_from' => '1443161386000',
    6. 'date_to'   => '1443164386000'
    7. ));
    как всё сразу понятно и просто то.
    Найди их либу, попробуй через неё
     
  6. sokol86922

    sokol86922 Активный пользователь

    С нами с:
    3 мар 2017
    Сообщения:
    46
    Симпатии:
    2
    Я первым делом скачал и подключил. Не работает, точнее выдает {"result":"success","data":[]}
    вроде как и работает, но нет данных, хотя знаю что есть. Такое впечатление что не читает массив или даты, хотя их верно конвертирую timestamp. С оплатой проблем нет. Думал может что то с таким сталкивался. Спасибо
     
  7. acho

    acho Активный пользователь

    С нами с:
    28 дек 2016
    Сообщения:
    854
    Симпатии:
    210
    Адрес:
    Санкт-Петербург
    Попробуй тогда обратиться в их техподдержку
     
    denis01 нравится это.
  8. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.861
    Симпатии:
    752
    Адрес:
    Татарстан
    уверен?
    например '1443161386000', = 18.12.47701, 21:46:40
    и вообще например с миллисекундами - то есть с 000 на конце, обычно формат JS
    если убрать в твоем запросе, то '1443161386' = 25.09.2015, 9:09:46

    кароче смотри в каком формате ждет апи, в том и отдавай
     
    acho и denis01 нравится это.
  9. sokol86922

    sokol86922 Активный пользователь

    С нами с:
    3 мар 2017
    Сообщения:
    46
    Симпатии:
    2
    Спасибо
    мой вариант был 'date_from'=>'1525996799', (это май 2018)
    это 1443161386000 пример на самом ликпеи.
    Удалось решить проблему. Оказалось все очень просто, надо было к 1525996799 добавить еще 000. Это получается милисекунды даже и для php. Теперь на сервере выдает список оплат правда с куча не нужных параметров, теперь не понятно как их убрать))).
    Вдруг кому то надо просто надо добавить 000 в конец даты timestamp
     
    acho нравится это.