Git Product home page Git Product logo

qiwi-wallet-personal-docs's Introduction

qiwi-wallet-personal-docs

API QIWI Кошелька позволяет автоматизировать выполнение платежей и получение отчетов о платежах, информации о вашем счёте в сервисе QIWI Кошелек.

Методы API доступны после регистрации пользователя в сервисе QIWI Кошелек.

qiwi-wallet-personal-docs's People

Contributors

garmd avatar mmmikhail avatar q-github-opensource avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

qiwi-wallet-personal-docs's Issues

Добавить проверку уровня идентификации

Не хватает проверки уровня идентификации получателя или его лимитов.
Часто получатель с лимитом 15тыс. руб делает заявку на 30 тыс. руб. Из-за чего платеж бракуется по превышению лимита.

Автозаполнение платежных форм – выбор способа оплаты

В методе Автозаполнение платежных форм очень не хватает возможности выбрать сразу метод оплаты, который появился в новой форме.

Например – выбрать за пользователя способ оплаты Картой.
И проскролить экран сразу на ввод карты + фокус на поле ввода карты.

Результат – пользователь переходит по ссылке и сразу переходит к вводу данных карты.

Добавить возможность блокировать поля получателя платежа.
Номер Кошелька получателя, Комментарий, Сумма – readonly

Переводы с автоматической конвертацией

У вас там все хорошо?

Вы при переводе с автоматической конвертацией создаете 3 транзакцией?!

  1. Отправка на свой кошель в конвертируемой валюте
  2. Приход на свой кошель в конвертируемой валюте
  3. Перевод в нужной валюте

Причем 1 и 2 одинаковы по txnId и по trmTxnid, которые должны быть разные. У вас все хорошо, мейби у вас там кто-то устал работать? Уже больше года такая история.

Сегодня взорвался. Простите.

Лимиты

Нужен удобный способ, чтобы узнать доступные для перевода объемы денежных средств. Насколько я понимаю, текущие объемы по переводам можно было бы узнавать с помощью раздела "Статистика платежей", но возникает вопрос: что делать, если были переводы в различной валюте?

Срок годности токена

Очень не хватает возможности узнать срок годности токена при помощи самого токена.

.

.

Поиск по номеру клиентской транзакции

Очень частно нужно запросить данные по номеру клиентской транзакции так как именно этот номер фигурирует в бумажном чеке (trmTxnId).. В API есть метод которые отдает данные по txnId, но он не подходит так как изначально у нас нет этого номера.. Получается надо сначала получить список платежей со всеми данными, потом в нужной записи вычленить txnId и по нему получить запись с помощью метода отдающего по транзакции.Зачем? если в списке уже есть нужные данные?!!! добавьте пожалуйста поиск по trmTxnId.

Webhook

Сейчас для того, чтобы узнать что пришел новый платеж – необходимо периодически дергать API входящих платежей (polling).

Push принцип существенно разгрузит ваш сервер от лишних запросов, а также поможет разработчикам создавать решения, которые будут быстрее реагировать на оплату.

Как самый просто вариант – это webhook на endpoint клиента (указанный через отдельный метод) с телом новой транзакции.

Хороший пример – Telagram Bot API https://core.telegram.org/bots/api#getting-updates

Значения shortName и longName

image

Последний элемент, похоже что должно быть наоборот value в shortName и longName

[ { "id": 36196, "shortName": "Покупка", "longName": "Покупка доместик в рублях", "logoUrl": null, "description": null, "keys": null, "siteUrl": null, "extras": [] }, { "id": 32064, "shortName": "Заказ карты QIWI", "longName": "Заказ карты QIWI", "logoUrl": "https://static.qiwi.com/img/providers/logoBig/32064_l.png", "description": null, "keys": "visa, qww, virtual visa, карта виза, визу купить, виртуальная виза, банковская карта, оплата в интернете, казино, покер, ставки, ставки на спорт, casino, poker, покупки в интернете, wow, warcraft, eve, paypal, amazon, itunes, world of warcraft, лотереи", "siteUrl": null, "extras": [ { "key": "favorite_payment_disabled", "value": "true" }, { "key": "regular_payment_disabled", "value": "true" } ] }, { "id": 32064, "shortName": "Заказ карты QIWI", "longName": "Заказ карты QIWI", "logoUrl": "https://static.qiwi.com/img/providers/logoBig/32064_l.png", "description": null, "keys": "visa, qww, virtual visa, карта виза, визу купить, виртуальная виза, банковская карта, оплата в интернете, казино, покер, ставки, ставки на спорт, casino, poker, покупки в интернете, wow, warcraft, eve, paypal, amazon, itunes, world of warcraft, лотереи", "siteUrl": null, "extras": [ { "key": "favorite_payment_disabled", "value": "true" }, { "key": "regular_payment_disabled", "value": "true" } ] }, { "id": 32064, "shortName": "Заказ карты QIWI", "longName": "Заказ карты QIWI", "logoUrl": "https://static.qiwi.com/img/providers/logoBig/32064_l.png", "description": null, "keys": "visa, qww, virtual visa, карта виза, визу купить, виртуальная виза, банковская карта, оплата в интернете, казино, покер, ставки, ставки на спорт, casino, poker, покупки в интернете, wow, warcraft, eve, paypal, amazon, itunes, world of warcraft, лотереи", "siteUrl": null, "extras": [ { "key": "favorite_payment_disabled", "value": "true" }, { "key": "regular_payment_disabled", "value": "true" } ] }, { "id": 36196, "shortName": "Покупка", "longName": "Покупка доместик в рублях", "logoUrl": null, "description": null, "keys": null, "siteUrl": null, "extras": [] }, { "id": 32064, "shortName": "Заказ карты QIWI", "longName": "Заказ карты QIWI", "logoUrl": "https://static.qiwi.com/img/providers/logoBig/32064_l.png", "description": null, "keys": "visa, qww, virtual visa, карта виза, визу купить, виртуальная виза, банковская карта, оплата в интернете, казино, покер, ставки, ставки на спорт, casino, poker, покупки в интернете, wow, warcraft, eve, paypal, amazon, itunes, world of warcraft, лотереи", "siteUrl": null, "extras": [ { "key": "favorite_payment_disabled", "value": "true" }, { "key": "regular_payment_disabled", "value": "true" } ] }, { "id": 36196, "shortName": "Покупка", "longName": "Покупка доместик в рублях", "logoUrl": null, "description": null, "keys": null, "siteUrl": null, "extras": [] }, { "id": 7, "shortName": "QIWI Кошелек", "longName": "QIWI Кошелек", "logoUrl": null, "description": null, "keys": "мобильный кошелек, кошелек, перевести деньги, личный кабинет, отправить деньги, перевод между пользователями", "siteUrl": null, "extras": [] }, { "id": 7, "shortName": "QIWI Кошелек", "longName": "QIWI Кошелек", "logoUrl": null, "description": null, "keys": "мобильный кошелек, кошелек, перевести деньги, личный кабинет, отправить деньги, перевод между пользователями", "siteUrl": null, "extras": [] }, { "id": 1057, "shortName": "QIWI Кошелек , пополнение, ЛК провайдеры", "longName": "QIWI Кошелек", "logoUrl": "https://static.qiwi.com/img/providers/logoBig/99_l.png", "description": null, "keys": "qiwi кошелек, wallet, перевести, qiv, qivi, киви кошелек, Мобильный кошелек, Мобильный кошелёк, кошелек, Личный Кабинет, киви, qiwi, личный кабинет qiwi, перевод между пользователями, перевод денег, kivi, электронные деньги, отправить деньги, kiwi", "siteUrl": "http://qiwi-in-use.livejournal.com/154487.html", "extras": [] } ]

Original Amount and Currency in transaction history

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

есть ли в планах добавить в информацию о транзакциях сумму и валюту в которой транзакция инициировалась? Например для платежей по пластиковым картам Qiwi это будет валюта той страны в которой выставили счёт и произошла оплата. Такая информация сейчас есть на сайте в отчётах по картам, но было бы хорошо иметь её и в API в списке транзакций

Коды ошибок

Предлагаю расширить коды ошибок для транзакций:

{
  "3": "Техническая ошибка, нельзя отправить запрос провайдеру",
  "4": "Неверный формат счета/телефона",
  "5": "Номер не принадлежит оператору",
  "8": "Прием платежа запрещен по техническим причинам",
  "13": "Сервер занят, повторите запрос через минуту",
  "74": "Ошибка платежа. Временный технический сбой",
  "130": "Платеж в адрес выбранного провайдера невозможен",
  "131": "Платежи на выбранного провайдера запрещено проводить из данной страны.",
  "155": "Прием платежа для данного провайдера запрещен",
  "202": "Ошибка в параметрах запроса",
  "203": "Ошибка авторизации пользователя",
  "206": "Кошелек временно заблокирован службой безопасности. Обратитесь в поддержку",
  "220": "Недостаточно средств",
  "241": "Сумма платежа меньше минимальной",
  "242": "Сумма платежа больше максимальной",
  "270": "Ошибка на стороне провайдера (получателя)",
  "300": "Техническая ошибка. Проверьте правильность введенных данных или повторите попытку позже. Возможно отправитель и получатель совпадают!",
  "319": "Платеж невозможен",
  "402": "Вас давно не было. =( Начните авторизацию заново.",
  "500": "По техническим причинам этот платеж не может быть выполнен. Для совершения платежа обратитесь, пожалуйста, в свой обслуживающий банк",
  "521": "Неверный счет или БИК плательщика",
  "522": "Неверный номер или срок действия карты получателя",
  "542": "Неверный номер карты получателя",
  "544": "Ошибка платежа",
  "547": "Ошибка в сроке действия карты получателя",
  "548": "Истек срок действия карты получателя",
  "561": "Платеж отвергнут оператором банка получателя",
  "601": "Недопустимое значение кода подтверждения",
  "702": "Платеж не проведен из-за ограничений у получателя",
  "705": "Ежемесячный лимит платежей и переводов для статуса Стандарт - 200 000 р. Для увеличения лимита пройдите идентификацию.",
  "704": "Ошибка платежа",
  "745": "Ошибка платежа",
  "746": "Превышен лимит по платежам в пользу провайдера",
  "747": "Превышен лимит по платежам в пользу провайдера",
  "750": "Ошибка платежа",
  "780": "Проведение платежа запрещено СБ",
  "801": "Кажется, что-то пошло не так. Пожалуйста, авторизуйтесь заново",
  "852": "Превышен лимит по платежам в пользу провайдера",
  "868": "Платеж не проведен. 5 000 рублей — лимит на переводы в месяц. Повысьте статус идентификации в Профиле и переводите без ограничений.",
  "893": "Срок действия перевода истек",
  "901": "Ошибка платежа",
  "934": "Cервис недоступен в стране пользователя",
  "943": "Ошибка платежа",
  "1001": "Кажется, что-то пошло не так. Повторите попытку позже.",
  "1018": "Пул номеров страны не активен",
  "1021": "Ограничение исходящих платежей",
  "1022": "Пополнение чужого номера запрещено",
  "1050": "Превышен лимит на операции, либо превышен дневной лимит на переводы на карты Visa/MasterCard",
  "1066": "Ошибка платежа",
  "7700": "Провайдер заблокирован",
  "7703": "Персона заблокирована"
}
``

Выставление счета p2p

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

  • Способ оплаты
  • Доступные способы оплаты
  • Ссылка при успешной оплате

в ссылке на оплату через query params.

но в админке p2p вы даете информацию о:

{
    "merchantUid": "aaabbbccc",
    "merchantSiteUid": "aaabbbccddd",
    "themeCode": "aaabbbcc-code",
    "widgetMerchantName": "firstname_dot_middlename",
    "widgetDescription": "",
    "widgetButtonText": "",
    "merchantSitePublicKey": "pub_key",
    "widgetAliasCode": "alias",
    "widgetSuccessUrl": null,
    "widgetMerchantEmail": null,
    "widgetMerchantOffer": null,
    "widgetMerchantMetric": null,
    "widgetMerchantInfo": null,
    "paymentMethodsData": [],
    "widgetTypeCode": "PREORDER",
    "widgetStyles": [
      {
        "widgetStyleCode": "PAY_FORM_MERCHANT_NAME",
        "widgetStyleValue": "some_value"
      },
      {
        "widgetStyleCode": "PREORDER_ENABLE_GRADIENT",
        "widgetStyleValue": "0"
      },
      {
        "widgetStyleCode": "PREORDER_PRIMARY_COLOR",
        "widgetStyleValue": "#ffffff"
      },
      {
        "widgetStyleCode": "SECONDARY_COLOR",
        "widgetStyleValue": "#ffffff"
      }
    ],
    "widgetPaymentSumAmount": []
  }

Может эти параметры передавать в customFields или эти поля можно настроить как-то другим способом?

Оплата выставленных счетов

Когда появится возможность через API узнавать о появлении выставленных счетов и оплачивать их ?
Обещали определиться еще в октябре.

Сломанные права доступа

Выбирая различные комбинации прав доступа получаю следующие результаты:

  1. Только просмотр истории - доступна история и общая информация (что, кстати, адекватно, т.к. для просмотра истории нужно запоминать еще и мобильный)
  2. История и баланс - доступна история и общая информация; баланс не доступен

UPD: 3. Общая информация и баланс - доступны история, общая информация И баланс

Неочевидное поведение, как по мне. Платежи я не пробовал, но если они тоже работают при отсутствии прав доступа у токена, то это совсем печально.

Qiwi API

qiwi_bug

  • Как я понял ошибка возникает из-за того, что не было операций на данном кошельке(на другом кошельке где есть операции всё работает), считаю что правильнее было бы вернуть пустой массив?
  • Так же у вас есть система никнеймов, но почему работать с API можно только по номеру телефона?

Не работает выпуск токена

screenshot from 2018-09-26 14-43-45

ОС: Ubuntu 18.04
Браузер: Firefox Quantum 62.0 (64-bit)
Разрешения: все, кроме проведения платежей без СМС

В Chrome все отработало.

Конвертация

Конвертация происходит через 1099 провайдера, а не через 99. Поправьте пожалуйста

Некорректное название поля в документации

В документации в разделе "История платежей" поле data[].account обозначено как "Номер счета получателя", хотя скорее это "Номер счета контрагента", там может быть и получатель, и отправитель в зависимости от типа операции

QWPRC-300 при создании платежа на другой QIWI кошелек

Делаю запрос на https://edge.qiwi.com/sinap/api/v2/terms/99/payments

С примерно такими данными в теле:

request_json = {
    "id": check_id,
    "sum": {"amount": amount, "currency": "643"},
    "paymentMethod": {"type": "Account", "accountId": "643"},
    "fields": {"account": qiwi_account_number},
}

Заголовки запроса так же есть, токен и тд - все, как в документации

Результат - падает ошибка QWPRC-300 "Техническая ошибка"

image

Настройки безопасности

Дайте пожалуйста настройки безопасности из апи. Старый интерфейс пора закрывать уже через tgsts токены.

Выписка по картам пакета Киви Мастер

Пользуемся пакетом киви мастер, много карт. Есть необходимость выгружать данные по картам и транзакции себе в crm . Задача не сложная. Данные карт загружаются, но выписка через API приходит в бинарном виде в формате PDF, есть ли способы получать выписку по каждой карте в json? Транзакции из API самого кошелька не содержат идентификатора карты или PAN, только последние цифры ********8888 и привязать к какой-то конкретной карте транзакцию не получается, есть ли способы для реализации такой задачи?

Срок действия паспорта

Предлагаю изменить в документации версию апи метода "Данные идентификации" на 4 версию. В данной версии предоставляется информация об актуальности паспортных данных владельца кошелька.

Версия: 4
Поле: passport_expired

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.