выставление счета qiwi python
qiwiBillPaymentsAPI 0.2
pip install qiwiBillPaymentsAPI Copy PIP instructions
Released: Mar 2, 2021
Qiwi Bill Payments API
Navigation
Project links
Statistics
View statistics for this project via Libraries.io, or by using our public dataset on Google BigQuery
License: MIT License
Requires: Python >=3.4
Maintainers
Classifiers
Project description
Universal payments API Python SDK
Python SDK модуль для внедрения единого платежного протокола эквайринга и QIWI Кошелька.
Установка и подключение
Установка с помощью pip:
Документация
API P2P-счетов (для физических лиц): https://developer.qiwi.com/ru/p2p-payments API QIWI Кассы (для юридических лиц): https://developer.qiwi.com/ru/bill-payments
Авторизация
Смена PUBLIC_KEY и SECRET_KEY на новый:
Примеры
Платежная форма
Простой способ для интеграции. При открытии формы клиенту автоматически выставляется счет. Параметры счета передаются в открытом виде в ссылке. Далее клиенту отображается платежная форма с выбором способа оплаты. При использовании этого способа нельзя гарантировать, что все счета выставлены мерчантом, в отличие от выставления по API.
Выставление счета
Информация о счете
Метод getBillInfo возвращает информацию о счете. В параметрах нужно указать идентификатор счета billId внутри вашей системы, в результате будет получен ответ со статусом счета. Подробнее в документации.
Отмена неоплаченного счета
Метод cancelBill отменяет неоплаченный счет. В параметрах нужно указать идентификатор счета billId внутри вашей системы, в результате будет получен ответ с информацией о счете. Подробнее в документации.
Выставление счета qiwi python
Штучка для удобной работы с кивишной апишкой платежей
Есть типа документация, но в ней есть и косячки, поэтому, если найдёте таковой, обязательно сообщите мне. Буду искренне рад. Правда. Спасибо.
Миграция с первой версии:
⚠️ Важное уведомление
С июня Qiwi начала блокировать кошельки, если пользователь открыл страницу оплаты «напрямую», тем самым не передав заголовок referer.
Это случается при открытии ссылки:
Страница предоставлена мною, но её можно поднять на своём сервере с помощью docker-контейнера.
А как пользоваться
Есть сам класс QiwiP2P, который обладает тремя инструментами: для выставления, проверки и закрытия платежа (счёта).
А асинхронно могёте?
Могём. Причём примерно так же.
Нет, не всё. Ещё можно настроить кивишные уведомления на свой сервер, для этого придется немного пострадать, но лишь немного.
Внимание! Для работы будет необходим проксирующий сервер (например, Nginx) с доверенным SSL-сертификатом. Да. Подробнее про требования к проксирующему серверу в документации Qiwi
А эта шайтан-машина нужна для захендлирования функций на события. Она не готова самостоятельно контактировать с внешним миром. Пожалей её.
И асинхронный сервер, наверное, у вас есть?
Да есть. Причём хендлить функции можно и асинхронные, и синхронные.
Настройка проксирующего Nginx
Для порта 12345 (как в примерах выше) будет:
В таком случае при генерации ключей API на https://qiwi.com/p2p-admin/transfers/api нужно будет указать https://qiwinotify.domain.com/superSecretQiwiURI в качестве URL для уведомлений
P.S. за неприходящие от Qiwi запросы ответственность не несу, как и за приходящие, кстати, тоже. Если запроса от Qiwi не было, то пишите им в поддержку @qiwi_api_help_bot
About
Library for comfortable work with the API of payment system for individuals QiwiP2P
API QIWI Кассы
Последнее обновление: 2019-03-20 | Редактировать на GitHub
Для работы API потребуются публичный и секретный ключи. Ключи создаются в личном кабинете после регистрации и подключения на kassa.qiwi.com или p2p.qiwi.com.
Схема работы
Пользователь формирует заказ на сайте мерчанта.
Мерчант перенаправляет пользователя на Платежную форму для выставления счета по заказу. Или выставляет счет по API и перенаправляет пользователя на созданную платежную форму.
Пользователь выбирает способ оплаты и оплачивает счет. По умолчанию подбирается оптимальный для пользователя способ оплаты.
После оплаты счета мерчант получает уведомление (предварительно настройте отправку уведомлений в Личном кабинете). Уведомления об оплате счета содержат параметры авторизации, которые необходимо проверять на сервере мерчанта.
Также есть возможность
Авторизация
Запросы мерчанта авторизуются посредством секретного ключа API (SECRET_KEY). Параметр авторизации указывается в заголовке Authorization, значение которого формируется как «Bearer SECRET_KEY».
Публичный ключ (PUBLIC_KEY) используется для выставления счетов через веб-форму.
Ключи создаются в личном кабинете после регистрации и подключения на kassa.qiwi.com или p2p.qiwi.com.
Взаимодействие через API
1. Выставление счета
Запрос → PUT
HEADERS
Ответ ←
Пример тела ответа при ошибке
HEADERS
2. Уведомления об оплате счетов
Запрос ← POST
Уведомление представляет собой входящий POST-запрос.
Тело запроса содержит JSON-сериализованные данные счета (кодировка UTF-8).
Адрес сервера для уведомлений указывается на сайте kassa.qiwi.com в разделе «Настройка протокола» или на p2p.qiwi.com при генерации ключей.
HEADERS
Авторизация уведомлений
Алгоритм проверки подписи:
Объединить значения параметров в одну строку с разделителем | :
где <*>– значение параметра уведомления. Все значения при проверке подписи должны трактоваться как строки.
Вычислить HMAC-хэш c алгоритмом хэширования SHA256:
hash = HMAС(SHA256, invoice_parameters, secret_key) Где:
Сравнить значение заголовка X-Api-Signature-SHA256 с результатом из п.2.
Строка и ключ подписи кодируются в UTF-8.
Параметры
В POST-запросе уведомления указаны параметры счета.
Параметр | Описание | Тип |
---|---|---|
bill | Данные о счете | Object |
billId | Уникальный идентификатор счета в системе мерчанта | String(200) |
siteId | Идентификатор сайта мерчанта в QIWI Кассе | String |
amount | Данные о сумме счета | Object |
amount.value | Сумма счета, округленная до двух десятичных знаков в меньшую сторону | Number(6.2) |
amount.currency | Идентификатор валюты счета (Alpha-3 ISO 4217 код) | String(3) |
status | Данные о статусе счета | Object |
status.value | Строковое значение статуса | String |
status.changedDateTime | Дата обновления статуса. Формат даты ГГГГ-ММ-ДДTЧЧ:ММ:ССZ | String |
customer | Данные о пользователе, на которого был выставлен счет | Object |
customer.phone | Номер телефона, на который был выставлен счет (если был указан при выставлении счета) | String |
customer.email | E-mail пользователя (если был указан при выставлении счета) | String |
customer.account | Идентификатор пользователя в системе мерчанта (если был указан при выставлении счета) | String |
creationDateTime | Дата создания счета. Формат даты ГГГГ-ММ-ДДTЧЧ:ММ:ССZ | String |
expirationDateTime | Срок оплаты счета. Формат даты ГГГГ-ММ-ДДTЧЧ:ММ:СС+ЧЧ:ММ\-Z | String |
comment | Комментарий к счету | String(255) |
customFields | Дополнительные данные счета (если были указаны при выставлении счета). | Object |
version | Версия уведомлений | String |
Ответ →
HEADERS
После того, как был получен входящий запрос-уведомление, необходимо проверить подлинность цифровой подписи и отправить ответ.
3. Проверка статуса оплаты счета
Метод позволяет проверить статус оплаты счета клиентом. Рекомендуется его использовать после получения уведомления об оплате.
Запрос → GET
URL https://api.qiwi.com/partner/bill/v1/bills/
HEADERS
Ответ ←
Пример тела ответа при ошибке
HEADERS
4. Отмена неоплаченного счета
Метод позволяет отменить неоплаченный счет.
Запрос → POST
URL https://api.qiwi.com/partner/bill/v1/bills//reject
HEADERS
Ответ ←
Пример тела ответа при ошибке
HEADERS
5. Возврат средств
Метод позволяет сделать возврат средств по оплаченному счету.
Запрос → PUT
URL https://api.qiwi.com/partner/bill/v1/bills//refunds/HEADERS
Ответ ←
Пример тела ответа при ошибке
HEADERS
6. Статус возврата
Метод запрашивает статус возврата по оплаченному счету.
Запрос → GET
URL https://api.qiwi.com/partner/bill/v1/bills//refunds/HEADERS
Ответ ←
Пример тела ответа при ошибке
HEADERS
Статусы оплаты счетов
Статус Описание Финальный WAITING Счет выставлен, ожидает оплаты — PAID Счет оплачен + REJECTED Счет отклонен + EXPIRED Время жизни счета истекло. Счет не оплачен +
Статусы операции возврата
Статус Описание Финальный PARTIAL Частичный возврат суммы — FULL Полный возврат суммы +
Дополнительно
Выставление счета через платежную форму
Простой способ для интеграции. При открытии формы клиенту автоматически выставляется счет. Параметры счета передаются в открытом виде в ссылке. Далее клиенту отображается платежная форма с выбором способа оплаты. При использовании этого способа нельзя гарантировать, что все счета выставлены мерчантом, в отличие от выставления по API.
REDIRECT →
URL https://oplata.qiwi.com/create
Параметры
В ссылке на веб-форму указываются параметры счета.
Параметр Описание Тип Обяз. publicKey Ключ идентификации мерчанта, полученный в QIWI Кассе String + billId Уникальный идентификатор счета в системе мерчанта URL-закодированная строка String(200) — amount Сумма, на которую выставляется счет, округленная в меньшую сторону до 2 десятичных знаков Number(6.2) — phone Номер телефона пользователя, на который выставляется счет (в международном формате) URL-закодированная строка — email E-mail пользователя, куда будет отправлена ссылка для оплаты счета URL-закодированная строка — account Идентификатор пользователя в системе мерчанта URL-закодированная строка — comment Комментарий к счету URL-закодированная строка String(255) — customFields[] Дополнительные данные счета URL-закодированная строка String(255) — lifetime Дата, до которой счет будет доступен для оплаты. Если счет не будет оплачен до этой даты, ему присваивается финальный статус EXPIRED и последующая оплата станет невозможна.
Внимание! По истечении 45 суток от даты выставления счет автоматически будет переведен в финальный статус URL-закодированная строка
ГГГГ-ММ-ДДTччмм — successUrl URL для переадресации в случае успешной оплаты с баланса QIWI Кошелька. При ином способе оплаты переадресация не выполняется. Ссылка должна вести на сайт мерчанта. URL-закодированная строка —
Персонализация
Персонализация позволяет адаптировать платежную форму под ваш стиль. Настраивается лого, фон и цвет кнопок.
Создать стили можно в личном кабинете. Возможно создать несколько стилей.
При настройке задается код, привязанный к стилю (например, кодСтиля ). Для использования стиля на платежной форме необходимо передать в параметре customFields запроса создания счета или вызова платежной формы переменную: «themeCode»:»кодСтиля» с соответствующим кодом стиля.
Пример передачи параметра при работе с формой
Пример передачи параметра при работе через API

Checkout Popup
Пример работы popup
Всплывающее окно (popup) позволяет открыть форму оплаты поверх вашего сайта. В библиотеке доступно два метода: создание нового счета и открытие существующего.
Установка и подключение:
Выставление нового счета
Пример выставления счета через popup
Параметр Описание Тип Обязательное publicKey Ключ идентификации мерчанта, полученный в QIWI Кассе String + amount Сумма, на которую выставляется счет, округленная в меньшую сторону до 2 десятичных знаков Number(6.2) + phone Номер телефона пользователя, на который выставляется счет (в международном формате) String — email E-mail пользователя, куда будет отправлена ссылка для оплаты счета String — account Идентификатор пользователя в системе мерчанта String — comment Комментарий к счету String(255) — customFields Дополнительные данные счета Object — lifetime Дата, до которой счет будет доступен для оплаты. Если счет не будет оплачен до этой даты, ему присваивается финальный статус EXPIRED и последующая оплата станет невозможна. Строка в виде ГГГГ-ММ-ДДTччмм —
Открытие существующего счета
Пример открытия уже созданного счета в popup
Возможности при открытии ссылки счета
При выставлении счета через API в ответе приходит payUrl с ссылкой на форму оплаты. К ссылке можно добавить следующие параметры:
Готовые решения
SDK и библиотеки
Решения для CMS
Рекомендации к оформлению
Иконки
Данные рекомендации помогут вашим пользователям быстрее сориентироваться на странице выбора способов оплаты.

Допустимо отображение QIWI Кассы текстом, без логотипа. Иконки способов оплаты выводятся:

Выставление счета qiwi python
Python Qiwi API Wrapper 2.1 by mostm
See pyQiwi Documentation: pyqiwi.readthedocs.io
class pyqiwi. Wallet ( token, number=None, contract_info=True, auth_info=True, user_info=True ) [исходный код] ¶
Все доступные счета на кошельке. Использовать можно только рублевый Visa QIWI Wallet.
Type: iterable of Account
profile ¶
Type: Profile
offered_accounts ¶
Доступные счета для создания
Type: iterable of Account
balance ( currency=643 ) [исходный код] ¶
Баланс Visa QIWI Кошелька
ValueError – Во всех добавленных вариантах оплаты с указанного Qiwi-кошелька нет информации об балансе и его сумме. Скорее всего это временная ошибка Qiwi API, и вам стоит попробовать позже. Так же, эта ошибка может быть вызвана только-что зарегистрированным Qiwi-кошельком,
либо довольно старым Qiwi-кошельком, которому необходимо изменение пароля.
Получение чека по транзакции, на E-Mail или файл.
. | Прямой возврат ответа от Qiwi API
commission ( pid, recipient, amount ) [исходный код] ¶
Расчет комиссии для платежа
Комиссия для платежа
create_account ( account_alias ) [исходный код] ¶
Создание счета-баланса в Visa QIWI Wallet
Параметры: account_alias (str) – Псевдоним нового счета. Один из доступных в Wallet.offered_accounts. Результат: Был ли успешно создан счет? Тип результата: bool
history ( rows=20, operation=None, start_date=None, end_date=None, sources=None, next_txn_date=None, next_txn_id=None ) [исходный код] ¶
При превышении доступ к API блокируется на 5 минут.
Данный запрос позволяет отправить данные для упрощенной идентификации своего QIWI кошелька.
Данный метод не тестируется, соответственно я не могу гарантировать того что он будет работать как должен. Вы делаете это на свой страх и риск.
Текущая идентификация пользователя. Параметр внутри отвечающий за подтверждение успешной идентификации: Identity.check
mobile ( account, amount ) [исходный код] ¶
Оплата мобильной связи.
ValueError – В случае, если не удалось определить провайдера.
qiwi_transfer ( account, amount, comment=None ) [исходный код] ¶
Перевод на Qiwi Кошелек
send ( pid, recipient, amount, comment=None, fields=None ) [исходный код] ¶
stat ( start_date=None, end_date=None, operation=None, sources=None ) [исходный код] ¶
Изначально берется статистика с начала месяца
transaction ( txn_id, txn_type ) [исходный код] ¶
Получение транзакции из Qiwi API
pyqiwi. detect_mobile ( phone ) [исходный код] ¶
Определение провайдера мобильного телефона
Параметры: phone (str) – Номер телефона Результат: ID провайдера Тип результата: str
pyqiwi. generate_form_link ( pid, account, amount, comment, blocked=None, account_type=None ) [исходный код] ¶
Создание автозаполненной платежной формы
Отвечает за вариант перевода при pid=99999 (вариация перевода на Qiwi Кошелек) Варианты: 0 (перевод по номеру телефона, phone), 1 (перевод по «никнейму», nickname),
Комментарий применяется только при переводе на Qiwi Кошелек по номеру (pid==99) Сумма платежа не может быть более 99999 из-за ограничений на один платеж. Тип счета для перевода на Qiwi Кошелек (pid=99999) с возможностью ввода «nickname» выбирается в account_type
Результат: Ссылка Тип результата: str Raises: ValueError – amount>99999 или список blocked неверен
pyqiwi. get_commission ( token, pid ) [исходный код] ¶
Получение стандартной комиссии
Комиссия для платежа
Types¶
Счет из Visa QIWI Кошелька
Псевдоним пользовательского баланса
Type: str
fs_alias ¶
Псевдоним банковского баланса
Название соответствующего счета кошелька
Type: str
has_balance ¶
Логический признак реального баланса в системе QIWI Кошелек (не привязанная карта, не счет мобильного телефона и т.д.)
Type: str
currency ¶
Код валюты баланса (number-3 ISO-4217).
Type: AccountType
balance ¶
Псевдоним пользовательского баланса
Type: Optional[float]
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. AccountType ( _id, title, obj ) [исходный код] ¶
Сведения о счете из Visa QIWI Кошелька
Кодовое название счета
Type: str
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. AuthInfo ( bound_email, ip, last_login_date, mobile_pin_info, pass_info, person_id, pin_info, registration_date, obj ) [исходный код] ¶
Профиль пользователя Visa QIWI Кошелька
E-mail, привязанный к кошельку. Если отсутствует, то None
Type: str/None
ip ¶
IP-адрес последней пользовательской сессии
Type: str
last_login_date ¶
Дата/время последней сессии в QIWI Кошельке
Type: str
mobile_pin_info ¶
Данные о PIN-коде мобильного приложения QIWI Кошелька
Type: MobilePinInfo
pass_info ¶
Данные о пароле к сайту qiwi.com
Type: PassInfo
person_id ¶
Номер кошелька пользователя
Type: int
pin_info ¶
Данные о PIN-коде к приложению QIWI Кошелька на QIWI терминалах
Type: PinInfo
registration_date ¶
Дата/время регистрации QIWI Кошелька пользователя (через сайт либо мобильное приложение, либо другим способом)
Type: datetime.datetime
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. Commission ( ranges, obj ) [исходный код] ¶
Массив объектов с граничными условиями комиссий
Type: list[ CommissionRange ]
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. CommissionRange ( bound, fixed, rate, _min, _max, obj ) [исходный код] ¶
Сумма платежа, начиная с которой применяется условие
Type: Optional[float/int]
rate ¶
Комиссия (абсолютный множитель)
Type: Optional[float/int]
min ¶
Минимальная сумма комиссии
Type: Optional[float/int]
max ¶
Максимальная сумма комиссии
Type: Optional[float/int]
fixed ¶
Фиксированная сумма комиссии
Type: Optional[float/int]
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. ContractInfo ( blocked, contract_id, creation_date, features, identification_info, obj ) [исходный код] ¶
Информация о кошельке пользователя
Логический признак блокировки кошелька
Type: bool
contract_id ¶
Номер кошелька пользователя
Type: int
creation_date ¶
Дата/время создания QIWI Кошелька пользователя (через сайт либо мобильное приложение, либо при первом пополнении, либо другим способом)
Type: datetime.datetime
features ¶
Type: .
identification_info ¶
Данные об идентификации пользователя
Type: list[ IdentificationInfo ]
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. IdentificationInfo ( bank_alias, identification_level, obj ) [исходный код] ¶
Данные об идентификации пользователя
Type: str
identification_level ¶
Type: str
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. Identity ( _id, _type, birth_date, first_name, middle_name, last_name, passport, inn, snils, oms, base_inn, obj ) [исходный код] ¶
Номер кошелька пользователя
Type: str
birth_date ¶
Дата рождения пользователя
Type: str
first_name ¶
Type: str
middle_name ¶
Type: str
last_name ¶
Type: str
passport ¶
Серия и номер паспорта пользователя
Номер СНИЛС пользователя
Номер полиса ОМС пользователя
Идентификация кошелька выполнена? (Используются варианты предлагаемые документацией Qiwi API)
Type: bool
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. JsonDeserializable [исходный код] ¶
Субклассы этого класса гарантированно могут быть созданы из json-подобного dict’а или форматированной json строки Все субклассы этого класса должны перезаписывать de_json
Содержит в себе исходные данные от Qiwi API
Type: .
static check_json ( json_type ) [исходный код] ¶
Проверяет, json_type или dict или str. Если это dict, возвращает его в исходном виде Иначе, возвращает dict созданный из json.loads(json_type)
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
static decode_date ( date_string: str ) [исходный код] ¶
Декодирует дату из строки вида отправляемого Qiwi API ISO-8601
Результат: Тип результата: datetime.datetime данной строки
class pyqiwi.types. MobilePinInfo ( mobile_pin_used, last_mobile_pin_change, next_mobile_pin_change, obj ) [исходный код] ¶
Данные о PIN-коде мобильного приложения QIWI Кошелька
Логический признак использования PIN-кода (фактически означает, что мобильное приложение используется)
Type: bool
last_mobile_pin_change ¶
Дата/время последнего изменения PIN-кода мобильного приложения QIWI Кошелька
Type: datetime.datetime
next_mobile_pin_change ¶
Дата/время следующего (планового) изменения PIN-кода мобильного приложения QIWI Кошелька
Type: datetime.datetime
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. OnlineCommission ( provider_id, withdraw_sum, enrollment_sum, qw_commission, funding_source_commission, withdraw_to_enrollment_rate, obj ) [исходный код] ¶
Type: int
withdraw_sum ¶
Общая сумма платежа
Type: TransactionSum
enrollment_sum ¶
Сумма платежа с учетом комиссии
Type: TransactionSum
qw_commission ¶
Type: TransactionSum
funding_source_commission ¶
Комиссия платежной системы(если Qiwi, то всегда 0)
Type: TransactionSum
withdraw_to_enrollment_rate ¶
Type: float/int
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. PassInfo ( last_pass_change, next_pass_change, password_used, obj ) [исходный код] ¶
Данные о пароле к сайту qiwi.com
Дата/время последнего изменения пароля сайта qiwi.com
Type: str
next_pass_change ¶
Дата/время следующего (планового) изменения пароля сайта qiwi.com
Type: str
password_used ¶
Логический признак использования пароля (фактически означает, что пользователь заходит на сайт)
Type: bool
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. Payment ( _id, terms, fields, _sum, transaction, source, comment, obj ) [исходный код] ¶
Данные о принятом платеже
Клиентский ID транзакции (В этой библиотеке, он считается 1000*Unix timestamp)
Type: str
fields ¶
Данные о сумме платежа
Type: str
comment ¶
Комментарий к платежу
Type: Optional[str]
transaction ¶
Данные о транзакции в процессинге
Type: Payment.Transaction
class Transaction ( _id, state, obj ) [исходный код] ¶
Данные о транзакции в процессинге
Статус транзакции(в момент написания, только Accepted)
Type: str
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. PaymentFields [исходный код] ¶
Данный класс представляет из себя хаотичную структуру(но всегда присутствует «account») Судя по документации Qiwi API, создается из исходного поля fields для платежа
Если вы хотите посмотреть исходный вид выданный Qiwi API, используйте str(PaymentFields)
Type: str
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. PinInfo ( pin_used, obj ) [исходный код] ¶
Данные о PIN-коде к приложению QIWI Кошелька на QIWI терминалах
Логический признак использования PIN-кода (фактически означает, что пользователь заходил в приложение)
Type: bool
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. Profile ( auth_info, contract_info, user_info, obj ) [исходный код] ¶
Профиль пользователя Visa QIWI Кошелька
Настройки авторизации пользователя
Type: Optional[ AuthInfo ]
contract_info ¶
Информация о кошельке пользователя
Type: Optional[ ContractInfo ]
user_info ¶
Прочие пользовательские данные
Type: Optional[ UserInfo ]
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. Statistics ( incoming_total, outgoing_total, obj ) [исходный код] ¶
Данные о входящих платежах (пополнениях), отдельно по каждой валюте
Type: list[ TransactionSum ]
outgoing_total ¶
Данные об исходящих платежах, отдельно по каждой валюте
Type: list[ TransactionSum ]
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. Transaction ( txn_id, person_id, date, error_code, error, status, _type, status_text, trm_txn_id, account, _sum, commission, total, provider, source, comment, currency_rate, features, view, obj ) [исходный код] ¶
ID транзакции в процессинге
Type: int
person_id ¶
Дата/время платежа, время московское
Type: datetime.datetime
error_code ¶
Код ошибки платежа
Type: int/float
error ¶
Type: str
status ¶
Type: str
status_text ¶
Текстовое описание статуса платежа
Type: str
trm_txn_id ¶
Клиентский ID транзакции
Type: str
account ¶
Номер счета получателя
Данные о сумме платежа
Type: TransactionSum
commission ¶
Данные о комиссии платежа
Данные об общей сумме платежа
Type: TransactionSum
provider ¶
Данные о провайдере
Type: TransactionProvider
comment ¶
Комментарий к платежу
Type: str
currency_rate ¶
Курс конвертации (если применяется в транзакции)
Type: float/int
source ¶
Type: .
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. TransactionProvider ( _id, short_name, long_name, logo_url, description, keys, site_url, obj ) [исходный код] ¶
Данные о провайдере
ID провайдера в процессинге
Type: int
short_name ¶
Краткое наименование провайдера
Type: str
long_name ¶
Развернутое наименование провайдера
Type: str
logo_url ¶
Cсылка на логотип провайдера
Type: str
description ¶
Описание провайдера (HTML)
Список ключевых слов
Type: str
site_url ¶
Type: str
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. TransactionSum ( amount, currency, obj ) [исходный код] ¶
Type: float/int
currency ¶
Type: str
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. UserInfo ( default_pay_currency, default_pay_source, email, first_txn_id, language, operator, phone_hash, promo_enabled, obj ) [исходный код] ¶
Прочие пользовательские данные
Код валюты баланса кошелька по умолчанию (number-3 ISO-4217)
Type: int
default_pay_source ¶
Type: str
first_txn_id ¶
Номер первой транзакции пользователя после регистрации
Type: int
language ¶
Название мобильного оператора номера пользователя
Type: str
phone_hash ¶
Type: .
promo_enabled ¶
Type: .
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
Exceptions¶
Type: str
method_name ¶
Название метода, вызванного при возникновении ошибки
Type: str
request ¶
Чистый ответ от сервера, полученный от requests
Type: requests.Response
response ¶
Текст выданный Qiwi API, без какой либо обработки
Type: str
method ¶
Метод вызванный на сервере Qiwi
Type: str
params ¶
Параметры вызванного метода
HEADERS
Ответ ←
Пример тела ответа при ошибке
HEADERS
6. Статус возврата
Метод запрашивает статус возврата по оплаченному счету.
Запрос → GET
URL https://api.qiwi.com/partner/bill/v1/bills//refunds/HEADERS
Ответ ←
Пример тела ответа при ошибке
HEADERS
Статусы оплаты счетов
Статус Описание Финальный WAITING Счет выставлен, ожидает оплаты — PAID Счет оплачен + REJECTED Счет отклонен + EXPIRED Время жизни счета истекло. Счет не оплачен +
Статусы операции возврата
Статус Описание Финальный PARTIAL Частичный возврат суммы — FULL Полный возврат суммы +
Дополнительно
Выставление счета через платежную форму
Простой способ для интеграции. При открытии формы клиенту автоматически выставляется счет. Параметры счета передаются в открытом виде в ссылке. Далее клиенту отображается платежная форма с выбором способа оплаты. При использовании этого способа нельзя гарантировать, что все счета выставлены мерчантом, в отличие от выставления по API.
REDIRECT →
URL https://oplata.qiwi.com/create
Параметры
В ссылке на веб-форму указываются параметры счета.
Параметр Описание Тип Обяз. publicKey Ключ идентификации мерчанта, полученный в QIWI Кассе String + billId Уникальный идентификатор счета в системе мерчанта URL-закодированная строка String(200) — amount Сумма, на которую выставляется счет, округленная в меньшую сторону до 2 десятичных знаков Number(6.2) — phone Номер телефона пользователя, на который выставляется счет (в международном формате) URL-закодированная строка — email E-mail пользователя, куда будет отправлена ссылка для оплаты счета URL-закодированная строка — account Идентификатор пользователя в системе мерчанта URL-закодированная строка — comment Комментарий к счету URL-закодированная строка String(255) — customFields[] Дополнительные данные счета URL-закодированная строка String(255) — lifetime Дата, до которой счет будет доступен для оплаты. Если счет не будет оплачен до этой даты, ему присваивается финальный статус EXPIRED и последующая оплата станет невозможна.
Внимание! По истечении 45 суток от даты выставления счет автоматически будет переведен в финальный статус URL-закодированная строка
ГГГГ-ММ-ДДTччмм — successUrl URL для переадресации в случае успешной оплаты с баланса QIWI Кошелька. При ином способе оплаты переадресация не выполняется. Ссылка должна вести на сайт мерчанта. URL-закодированная строка —
Персонализация
Персонализация позволяет адаптировать платежную форму под ваш стиль. Настраивается лого, фон и цвет кнопок.
Создать стили можно в личном кабинете. Возможно создать несколько стилей.
При настройке задается код, привязанный к стилю (например, кодСтиля ). Для использования стиля на платежной форме необходимо передать в параметре customFields запроса создания счета или вызова платежной формы переменную: «themeCode»:»кодСтиля» с соответствующим кодом стиля.
Пример передачи параметра при работе с формой
Пример передачи параметра при работе через API

Checkout Popup
Пример работы popup
Всплывающее окно (popup) позволяет открыть форму оплаты поверх вашего сайта. В библиотеке доступно два метода: создание нового счета и открытие существующего.
Установка и подключение:
Выставление нового счета
Пример выставления счета через popup
Параметр Описание Тип Обязательное publicKey Ключ идентификации мерчанта, полученный в QIWI Кассе String + amount Сумма, на которую выставляется счет, округленная в меньшую сторону до 2 десятичных знаков Number(6.2) + phone Номер телефона пользователя, на который выставляется счет (в международном формате) String — email E-mail пользователя, куда будет отправлена ссылка для оплаты счета String — account Идентификатор пользователя в системе мерчанта String — comment Комментарий к счету String(255) — customFields Дополнительные данные счета Object — lifetime Дата, до которой счет будет доступен для оплаты. Если счет не будет оплачен до этой даты, ему присваивается финальный статус EXPIRED и последующая оплата станет невозможна. Строка в виде ГГГГ-ММ-ДДTччмм —
Открытие существующего счета
Пример открытия уже созданного счета в popup
Возможности при открытии ссылки счета
При выставлении счета через API в ответе приходит payUrl с ссылкой на форму оплаты. К ссылке можно добавить следующие параметры:
Готовые решения
SDK и библиотеки
Решения для CMS
Рекомендации к оформлению
Иконки
Данные рекомендации помогут вашим пользователям быстрее сориентироваться на странице выбора способов оплаты.

Допустимо отображение QIWI Кассы текстом, без логотипа. Иконки способов оплаты выводятся:

Выставление счета qiwi python
Python Qiwi API Wrapper 2.1 by mostm
See pyQiwi Documentation: pyqiwi.readthedocs.io
class pyqiwi. Wallet ( token, number=None, contract_info=True, auth_info=True, user_info=True ) [исходный код] ¶
Все доступные счета на кошельке. Использовать можно только рублевый Visa QIWI Wallet.
Type: iterable of Account
profile ¶
Type: Profile
offered_accounts ¶
Доступные счета для создания
Type: iterable of Account
balance ( currency=643 ) [исходный код] ¶
Баланс Visa QIWI Кошелька
ValueError – Во всех добавленных вариантах оплаты с указанного Qiwi-кошелька нет информации об балансе и его сумме. Скорее всего это временная ошибка Qiwi API, и вам стоит попробовать позже. Так же, эта ошибка может быть вызвана только-что зарегистрированным Qiwi-кошельком,
либо довольно старым Qiwi-кошельком, которому необходимо изменение пароля.
Получение чека по транзакции, на E-Mail или файл.
. | Прямой возврат ответа от Qiwi API
commission ( pid, recipient, amount ) [исходный код] ¶
Расчет комиссии для платежа
Комиссия для платежа
create_account ( account_alias ) [исходный код] ¶
Создание счета-баланса в Visa QIWI Wallet
Параметры: account_alias (str) – Псевдоним нового счета. Один из доступных в Wallet.offered_accounts. Результат: Был ли успешно создан счет? Тип результата: bool
history ( rows=20, operation=None, start_date=None, end_date=None, sources=None, next_txn_date=None, next_txn_id=None ) [исходный код] ¶
При превышении доступ к API блокируется на 5 минут.
Данный запрос позволяет отправить данные для упрощенной идентификации своего QIWI кошелька.
Данный метод не тестируется, соответственно я не могу гарантировать того что он будет работать как должен. Вы делаете это на свой страх и риск.
Текущая идентификация пользователя. Параметр внутри отвечающий за подтверждение успешной идентификации: Identity.check
mobile ( account, amount ) [исходный код] ¶
Оплата мобильной связи.
ValueError – В случае, если не удалось определить провайдера.
qiwi_transfer ( account, amount, comment=None ) [исходный код] ¶
Перевод на Qiwi Кошелек
send ( pid, recipient, amount, comment=None, fields=None ) [исходный код] ¶
stat ( start_date=None, end_date=None, operation=None, sources=None ) [исходный код] ¶
Изначально берется статистика с начала месяца
transaction ( txn_id, txn_type ) [исходный код] ¶
Получение транзакции из Qiwi API
pyqiwi. detect_mobile ( phone ) [исходный код] ¶
Определение провайдера мобильного телефона
Параметры: phone (str) – Номер телефона Результат: ID провайдера Тип результата: str
pyqiwi. generate_form_link ( pid, account, amount, comment, blocked=None, account_type=None ) [исходный код] ¶
Создание автозаполненной платежной формы
Отвечает за вариант перевода при pid=99999 (вариация перевода на Qiwi Кошелек) Варианты: 0 (перевод по номеру телефона, phone), 1 (перевод по «никнейму», nickname),
Комментарий применяется только при переводе на Qiwi Кошелек по номеру (pid==99) Сумма платежа не может быть более 99999 из-за ограничений на один платеж. Тип счета для перевода на Qiwi Кошелек (pid=99999) с возможностью ввода «nickname» выбирается в account_type
Результат: Ссылка Тип результата: str Raises: ValueError – amount>99999 или список blocked неверен
pyqiwi. get_commission ( token, pid ) [исходный код] ¶
Получение стандартной комиссии
Комиссия для платежа
Types¶
Счет из Visa QIWI Кошелька
Псевдоним пользовательского баланса
Type: str
fs_alias ¶
Псевдоним банковского баланса
Название соответствующего счета кошелька
Type: str
has_balance ¶
Логический признак реального баланса в системе QIWI Кошелек (не привязанная карта, не счет мобильного телефона и т.д.)
Type: str
currency ¶
Код валюты баланса (number-3 ISO-4217).
Type: AccountType
balance ¶
Псевдоним пользовательского баланса
Type: Optional[float]
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. AccountType ( _id, title, obj ) [исходный код] ¶
Сведения о счете из Visa QIWI Кошелька
Кодовое название счета
Type: str
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. AuthInfo ( bound_email, ip, last_login_date, mobile_pin_info, pass_info, person_id, pin_info, registration_date, obj ) [исходный код] ¶
Профиль пользователя Visa QIWI Кошелька
E-mail, привязанный к кошельку. Если отсутствует, то None
Type: str/None
ip ¶
IP-адрес последней пользовательской сессии
Type: str
last_login_date ¶
Дата/время последней сессии в QIWI Кошельке
Type: str
mobile_pin_info ¶
Данные о PIN-коде мобильного приложения QIWI Кошелька
Type: MobilePinInfo
pass_info ¶
Данные о пароле к сайту qiwi.com
Type: PassInfo
person_id ¶
Номер кошелька пользователя
Type: int
pin_info ¶
Данные о PIN-коде к приложению QIWI Кошелька на QIWI терминалах
Type: PinInfo
registration_date ¶
Дата/время регистрации QIWI Кошелька пользователя (через сайт либо мобильное приложение, либо другим способом)
Type: datetime.datetime
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. Commission ( ranges, obj ) [исходный код] ¶
Массив объектов с граничными условиями комиссий
Type: list[ CommissionRange ]
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. CommissionRange ( bound, fixed, rate, _min, _max, obj ) [исходный код] ¶
Сумма платежа, начиная с которой применяется условие
Type: Optional[float/int]
rate ¶
Комиссия (абсолютный множитель)
Type: Optional[float/int]
min ¶
Минимальная сумма комиссии
Type: Optional[float/int]
max ¶
Максимальная сумма комиссии
Type: Optional[float/int]
fixed ¶
Фиксированная сумма комиссии
Type: Optional[float/int]
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. ContractInfo ( blocked, contract_id, creation_date, features, identification_info, obj ) [исходный код] ¶
Информация о кошельке пользователя
Логический признак блокировки кошелька
Type: bool
contract_id ¶
Номер кошелька пользователя
Type: int
creation_date ¶
Дата/время создания QIWI Кошелька пользователя (через сайт либо мобильное приложение, либо при первом пополнении, либо другим способом)
Type: datetime.datetime
features ¶
Type: .
identification_info ¶
Данные об идентификации пользователя
Type: list[ IdentificationInfo ]
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. IdentificationInfo ( bank_alias, identification_level, obj ) [исходный код] ¶
Данные об идентификации пользователя
Type: str
identification_level ¶
Type: str
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. Identity ( _id, _type, birth_date, first_name, middle_name, last_name, passport, inn, snils, oms, base_inn, obj ) [исходный код] ¶
Номер кошелька пользователя
Type: str
birth_date ¶
Дата рождения пользователя
Type: str
first_name ¶
Type: str
middle_name ¶
Type: str
last_name ¶
Type: str
passport ¶
Серия и номер паспорта пользователя
Номер СНИЛС пользователя
Номер полиса ОМС пользователя
Идентификация кошелька выполнена? (Используются варианты предлагаемые документацией Qiwi API)
Type: bool
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. JsonDeserializable [исходный код] ¶
Субклассы этого класса гарантированно могут быть созданы из json-подобного dict’а или форматированной json строки Все субклассы этого класса должны перезаписывать de_json
Содержит в себе исходные данные от Qiwi API
Type: .
static check_json ( json_type ) [исходный код] ¶
Проверяет, json_type или dict или str. Если это dict, возвращает его в исходном виде Иначе, возвращает dict созданный из json.loads(json_type)
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
static decode_date ( date_string: str ) [исходный код] ¶
Декодирует дату из строки вида отправляемого Qiwi API ISO-8601
Результат: Тип результата: datetime.datetime данной строки
class pyqiwi.types. MobilePinInfo ( mobile_pin_used, last_mobile_pin_change, next_mobile_pin_change, obj ) [исходный код] ¶
Данные о PIN-коде мобильного приложения QIWI Кошелька
Логический признак использования PIN-кода (фактически означает, что мобильное приложение используется)
Type: bool
last_mobile_pin_change ¶
Дата/время последнего изменения PIN-кода мобильного приложения QIWI Кошелька
Type: datetime.datetime
next_mobile_pin_change ¶
Дата/время следующего (планового) изменения PIN-кода мобильного приложения QIWI Кошелька
Type: datetime.datetime
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. OnlineCommission ( provider_id, withdraw_sum, enrollment_sum, qw_commission, funding_source_commission, withdraw_to_enrollment_rate, obj ) [исходный код] ¶
Type: int
withdraw_sum ¶
Общая сумма платежа
Type: TransactionSum
enrollment_sum ¶
Сумма платежа с учетом комиссии
Type: TransactionSum
qw_commission ¶
Type: TransactionSum
funding_source_commission ¶
Комиссия платежной системы(если Qiwi, то всегда 0)
Type: TransactionSum
withdraw_to_enrollment_rate ¶
Type: float/int
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. PassInfo ( last_pass_change, next_pass_change, password_used, obj ) [исходный код] ¶
Данные о пароле к сайту qiwi.com
Дата/время последнего изменения пароля сайта qiwi.com
Type: str
next_pass_change ¶
Дата/время следующего (планового) изменения пароля сайта qiwi.com
Type: str
password_used ¶
Логический признак использования пароля (фактически означает, что пользователь заходит на сайт)
Type: bool
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. Payment ( _id, terms, fields, _sum, transaction, source, comment, obj ) [исходный код] ¶
Данные о принятом платеже
Клиентский ID транзакции (В этой библиотеке, он считается 1000*Unix timestamp)
Type: str
fields ¶
Данные о сумме платежа
Type: str
comment ¶
Комментарий к платежу
Type: Optional[str]
transaction ¶
Данные о транзакции в процессинге
Type: Payment.Transaction
class Transaction ( _id, state, obj ) [исходный код] ¶
Данные о транзакции в процессинге
Статус транзакции(в момент написания, только Accepted)
Type: str
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. PaymentFields [исходный код] ¶
Данный класс представляет из себя хаотичную структуру(но всегда присутствует «account») Судя по документации Qiwi API, создается из исходного поля fields для платежа
Если вы хотите посмотреть исходный вид выданный Qiwi API, используйте str(PaymentFields)
Type: str
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. PinInfo ( pin_used, obj ) [исходный код] ¶
Данные о PIN-коде к приложению QIWI Кошелька на QIWI терминалах
Логический признак использования PIN-кода (фактически означает, что пользователь заходил в приложение)
Type: bool
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. Profile ( auth_info, contract_info, user_info, obj ) [исходный код] ¶
Профиль пользователя Visa QIWI Кошелька
Настройки авторизации пользователя
Type: Optional[ AuthInfo ]
contract_info ¶
Информация о кошельке пользователя
Type: Optional[ ContractInfo ]
user_info ¶
Прочие пользовательские данные
Type: Optional[ UserInfo ]
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. Statistics ( incoming_total, outgoing_total, obj ) [исходный код] ¶
Данные о входящих платежах (пополнениях), отдельно по каждой валюте
Type: list[ TransactionSum ]
outgoing_total ¶
Данные об исходящих платежах, отдельно по каждой валюте
Type: list[ TransactionSum ]
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. Transaction ( txn_id, person_id, date, error_code, error, status, _type, status_text, trm_txn_id, account, _sum, commission, total, provider, source, comment, currency_rate, features, view, obj ) [исходный код] ¶
ID транзакции в процессинге
Type: int
person_id ¶
Дата/время платежа, время московское
Type: datetime.datetime
error_code ¶
Код ошибки платежа
Type: int/float
error ¶
Type: str
status ¶
Type: str
status_text ¶
Текстовое описание статуса платежа
Type: str
trm_txn_id ¶
Клиентский ID транзакции
Type: str
account ¶
Номер счета получателя
Данные о сумме платежа
Type: TransactionSum
commission ¶
Данные о комиссии платежа
Данные об общей сумме платежа
Type: TransactionSum
provider ¶
Данные о провайдере
Type: TransactionProvider
comment ¶
Комментарий к платежу
Type: str
currency_rate ¶
Курс конвертации (если применяется в транзакции)
Type: float/int
source ¶
Type: .
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. TransactionProvider ( _id, short_name, long_name, logo_url, description, keys, site_url, obj ) [исходный код] ¶
Данные о провайдере
ID провайдера в процессинге
Type: int
short_name ¶
Краткое наименование провайдера
Type: str
long_name ¶
Развернутое наименование провайдера
Type: str
logo_url ¶
Cсылка на логотип провайдера
Type: str
description ¶
Описание провайдера (HTML)
Список ключевых слов
Type: str
site_url ¶
Type: str
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. TransactionSum ( amount, currency, obj ) [исходный код] ¶
Type: float/int
currency ¶
Type: str
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
class pyqiwi.types. UserInfo ( default_pay_currency, default_pay_source, email, first_txn_id, language, operator, phone_hash, promo_enabled, obj ) [исходный код] ¶
Прочие пользовательские данные
Код валюты баланса кошелька по умолчанию (number-3 ISO-4217)
Type: int
default_pay_source ¶
Type: str
first_txn_id ¶
Номер первой транзакции пользователя после регистрации
Type: int
language ¶
Название мобильного оператора номера пользователя
Type: str
phone_hash ¶
Type: .
promo_enabled ¶
Type: .
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: Тип результата: Инстанс этого класса из созданного json dict’а или строки
Exceptions¶
Type: str
method_name ¶
Название метода, вызванного при возникновении ошибки
Type: str
request ¶
Чистый ответ от сервера, полученный от requests
Type: requests.Response
response ¶
Текст выданный Qiwi API, без какой либо обработки
Type: str
method ¶
Метод вызванный на сервере Qiwi
Type: str
params ¶
Параметры вызванного метода
HEADERS
Ответ ←
Пример тела ответа при ошибке
HEADERS
Статусы оплаты счетов
Статус | Описание | Финальный |
---|---|---|
WAITING | Счет выставлен, ожидает оплаты | — |
PAID | Счет оплачен | + |
REJECTED | Счет отклонен | + |
EXPIRED | Время жизни счета истекло. Счет не оплачен | + |
Статусы операции возврата
Статус | Описание | Финальный |
---|---|---|
PARTIAL | Частичный возврат суммы | — |
FULL | Полный возврат суммы | + |
Дополнительно
Выставление счета через платежную форму
Простой способ для интеграции. При открытии формы клиенту автоматически выставляется счет. Параметры счета передаются в открытом виде в ссылке. Далее клиенту отображается платежная форма с выбором способа оплаты. При использовании этого способа нельзя гарантировать, что все счета выставлены мерчантом, в отличие от выставления по API.
REDIRECT →
URL https://oplata.qiwi.com/create
Параметры
В ссылке на веб-форму указываются параметры счета.
Параметр | Описание | Тип | Обяз. |
---|---|---|---|
publicKey | Ключ идентификации мерчанта, полученный в QIWI Кассе | String | + |
billId | Уникальный идентификатор счета в системе мерчанта | URL-закодированная строка String(200) | — |
amount | Сумма, на которую выставляется счет, округленная в меньшую сторону до 2 десятичных знаков | Number(6.2) | — |
phone | Номер телефона пользователя, на который выставляется счет (в международном формате) | URL-закодированная строка | — |
E-mail пользователя, куда будет отправлена ссылка для оплаты счета | URL-закодированная строка | — | |
account | Идентификатор пользователя в системе мерчанта | URL-закодированная строка | — |
comment | Комментарий к счету | URL-закодированная строка String(255) | — |
customFields[] | Дополнительные данные счета | URL-закодированная строка String(255) | — |
lifetime | Дата, до которой счет будет доступен для оплаты. Если счет не будет оплачен до этой даты, ему присваивается финальный статус EXPIRED и последующая оплата станет невозможна. Внимание! По истечении 45 суток от даты выставления счет автоматически будет переведен в финальный статус | URL-закодированная строка ГГГГ-ММ-ДДTччмм | — |
successUrl | URL для переадресации в случае успешной оплаты с баланса QIWI Кошелька. При ином способе оплаты переадресация не выполняется. Ссылка должна вести на сайт мерчанта. | URL-закодированная строка | — |
Персонализация
Персонализация позволяет адаптировать платежную форму под ваш стиль. Настраивается лого, фон и цвет кнопок.
Создать стили можно в личном кабинете. Возможно создать несколько стилей.
При настройке задается код, привязанный к стилю (например, кодСтиля ). Для использования стиля на платежной форме необходимо передать в параметре customFields запроса создания счета или вызова платежной формы переменную: «themeCode»:»кодСтиля» с соответствующим кодом стиля.
Пример передачи параметра при работе с формой
Пример передачи параметра при работе через API
Checkout Popup
Пример работы popup
Всплывающее окно (popup) позволяет открыть форму оплаты поверх вашего сайта. В библиотеке доступно два метода: создание нового счета и открытие существующего.
Установка и подключение:
Выставление нового счета
Пример выставления счета через popup
Параметр | Описание | Тип | Обязательное |
---|---|---|---|
publicKey | Ключ идентификации мерчанта, полученный в QIWI Кассе | String | + |
amount | Сумма, на которую выставляется счет, округленная в меньшую сторону до 2 десятичных знаков | Number(6.2) | + |
phone | Номер телефона пользователя, на который выставляется счет (в международном формате) | String | — |
E-mail пользователя, куда будет отправлена ссылка для оплаты счета | String | — | |
account | Идентификатор пользователя в системе мерчанта | String | — |
comment | Комментарий к счету | String(255) | — |
customFields | Дополнительные данные счета | Object | — |
lifetime | Дата, до которой счет будет доступен для оплаты. Если счет не будет оплачен до этой даты, ему присваивается финальный статус EXPIRED и последующая оплата станет невозможна. | Строка в виде ГГГГ-ММ-ДДTччмм | — |
Открытие существующего счета
Пример открытия уже созданного счета в popup
Возможности при открытии ссылки счета
При выставлении счета через API в ответе приходит payUrl с ссылкой на форму оплаты. К ссылке можно добавить следующие параметры:
Готовые решения
SDK и библиотеки
Решения для CMS
Рекомендации к оформлению
Иконки
Данные рекомендации помогут вашим пользователям быстрее сориентироваться на странице выбора способов оплаты.
Допустимо отображение QIWI Кассы текстом, без логотипа. Иконки способов оплаты выводятся:
Выставление счета qiwi python
Python Qiwi API Wrapper 2.1 by mostm
See pyQiwi Documentation: pyqiwi.readthedocs.io
class pyqiwi. Wallet ( token, number=None, contract_info=True, auth_info=True, user_info=True ) [исходный код] ¶
Все доступные счета на кошельке. Использовать можно только рублевый Visa QIWI Wallet.
Type: | iterable of Account |
---|
profile ¶
Type: | Profile |
---|
offered_accounts ¶
Доступные счета для создания
Type: | iterable of Account |
---|
balance ( currency=643 ) [исходный код] ¶
Баланс Visa QIWI Кошелька
ValueError – Во всех добавленных вариантах оплаты с указанного Qiwi-кошелька нет информации об балансе и его сумме. Скорее всего это временная ошибка Qiwi API, и вам стоит попробовать позже. Так же, эта ошибка может быть вызвана только-что зарегистрированным Qiwi-кошельком,
либо довольно старым Qiwi-кошельком, которому необходимо изменение пароля.
Получение чека по транзакции, на E-Mail или файл.
. | Прямой возврат ответа от Qiwi API
commission ( pid, recipient, amount ) [исходный код] ¶
Расчет комиссии для платежа
Комиссия для платежа
create_account ( account_alias ) [исходный код] ¶
Создание счета-баланса в Visa QIWI Wallet
Параметры: | account_alias (str) – Псевдоним нового счета. Один из доступных в Wallet.offered_accounts. |
---|---|
Результат: | Был ли успешно создан счет? |
Тип результата: | bool |
history ( rows=20, operation=None, start_date=None, end_date=None, sources=None, next_txn_date=None, next_txn_id=None ) [исходный код] ¶
При превышении доступ к API блокируется на 5 минут.
Данный запрос позволяет отправить данные для упрощенной идентификации своего QIWI кошелька.
Данный метод не тестируется, соответственно я не могу гарантировать того что он будет работать как должен. Вы делаете это на свой страх и риск.
Текущая идентификация пользователя. Параметр внутри отвечающий за подтверждение успешной идентификации: Identity.check
mobile ( account, amount ) [исходный код] ¶
Оплата мобильной связи.
ValueError – В случае, если не удалось определить провайдера.
qiwi_transfer ( account, amount, comment=None ) [исходный код] ¶
Перевод на Qiwi Кошелек
send ( pid, recipient, amount, comment=None, fields=None ) [исходный код] ¶
stat ( start_date=None, end_date=None, operation=None, sources=None ) [исходный код] ¶
Изначально берется статистика с начала месяца
transaction ( txn_id, txn_type ) [исходный код] ¶
Получение транзакции из Qiwi API
pyqiwi. detect_mobile ( phone ) [исходный код] ¶
Определение провайдера мобильного телефона
Параметры: | phone (str) – Номер телефона |
---|---|
Результат: | ID провайдера |
Тип результата: | str |
pyqiwi. generate_form_link ( pid, account, amount, comment, blocked=None, account_type=None ) [исходный код] ¶
Создание автозаполненной платежной формы
Отвечает за вариант перевода при pid=99999 (вариация перевода на Qiwi Кошелек) Варианты: 0 (перевод по номеру телефона, phone), 1 (перевод по «никнейму», nickname),
Комментарий применяется только при переводе на Qiwi Кошелек по номеру (pid==99) Сумма платежа не может быть более 99999 из-за ограничений на один платеж. Тип счета для перевода на Qiwi Кошелек (pid=99999) с возможностью ввода «nickname» выбирается в account_type
Результат: | Ссылка |
---|---|
Тип результата: | str |
Raises: | ValueError – amount>99999 или список blocked неверен |
pyqiwi. get_commission ( token, pid ) [исходный код] ¶
Получение стандартной комиссии
Комиссия для платежа
Types¶
Счет из Visa QIWI Кошелька
Псевдоним пользовательского баланса
Type: | str |
---|
fs_alias ¶
Псевдоним банковского баланса
Название соответствующего счета кошелька
Type: | str |
---|
has_balance ¶
Логический признак реального баланса в системе QIWI Кошелек (не привязанная карта, не счет мобильного телефона и т.д.)
Type: | str |
---|
currency ¶
Код валюты баланса (number-3 ISO-4217).
Type: | AccountType |
---|
balance ¶
Псевдоним пользовательского баланса
Type: | Optional[float] |
---|
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: | |
---|---|
Тип результата: | Инстанс этого класса из созданного json dict’а или строки |
class pyqiwi.types. AccountType ( _id, title, obj ) [исходный код] ¶
Сведения о счете из Visa QIWI Кошелька
Кодовое название счета
Type: | str |
---|
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: | |
---|---|
Тип результата: | Инстанс этого класса из созданного json dict’а или строки |
class pyqiwi.types. AuthInfo ( bound_email, ip, last_login_date, mobile_pin_info, pass_info, person_id, pin_info, registration_date, obj ) [исходный код] ¶
Профиль пользователя Visa QIWI Кошелька
E-mail, привязанный к кошельку. Если отсутствует, то None
Type: | str/None |
---|
ip ¶
IP-адрес последней пользовательской сессии
Type: | str |
---|
last_login_date ¶
Дата/время последней сессии в QIWI Кошельке
Type: | str |
---|
mobile_pin_info ¶
Данные о PIN-коде мобильного приложения QIWI Кошелька
Type: | MobilePinInfo |
---|
pass_info ¶
Данные о пароле к сайту qiwi.com
Type: | PassInfo |
---|
person_id ¶
Номер кошелька пользователя
Type: | int |
---|
pin_info ¶
Данные о PIN-коде к приложению QIWI Кошелька на QIWI терминалах
Type: | PinInfo |
---|
registration_date ¶
Дата/время регистрации QIWI Кошелька пользователя (через сайт либо мобильное приложение, либо другим способом)
Type: | datetime.datetime |
---|
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: | |
---|---|
Тип результата: | Инстанс этого класса из созданного json dict’а или строки |
class pyqiwi.types. Commission ( ranges, obj ) [исходный код] ¶
Массив объектов с граничными условиями комиссий
Type: | list[ CommissionRange ] |
---|
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: | |
---|---|
Тип результата: | Инстанс этого класса из созданного json dict’а или строки |
class pyqiwi.types. CommissionRange ( bound, fixed, rate, _min, _max, obj ) [исходный код] ¶
Сумма платежа, начиная с которой применяется условие
Type: | Optional[float/int] |
---|
rate ¶
Комиссия (абсолютный множитель)
Type: | Optional[float/int] |
---|
min ¶
Минимальная сумма комиссии
Type: | Optional[float/int] |
---|
max ¶
Максимальная сумма комиссии
Type: | Optional[float/int] |
---|
fixed ¶
Фиксированная сумма комиссии
Type: | Optional[float/int] |
---|
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: | |
---|---|
Тип результата: | Инстанс этого класса из созданного json dict’а или строки |
class pyqiwi.types. ContractInfo ( blocked, contract_id, creation_date, features, identification_info, obj ) [исходный код] ¶
Информация о кошельке пользователя
Логический признак блокировки кошелька
Type: | bool |
---|
contract_id ¶
Номер кошелька пользователя
Type: | int |
---|
creation_date ¶
Дата/время создания QIWI Кошелька пользователя (через сайт либо мобильное приложение, либо при первом пополнении, либо другим способом)
Type: | datetime.datetime |
---|
features ¶
Type: | . |
---|
identification_info ¶
Данные об идентификации пользователя
Type: | list[ IdentificationInfo ] |
---|
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: | |
---|---|
Тип результата: | Инстанс этого класса из созданного json dict’а или строки |
class pyqiwi.types. IdentificationInfo ( bank_alias, identification_level, obj ) [исходный код] ¶
Данные об идентификации пользователя
Type: | str |
---|
identification_level ¶
Type: | str |
---|
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: | |
---|---|
Тип результата: | Инстанс этого класса из созданного json dict’а или строки |
class pyqiwi.types. Identity ( _id, _type, birth_date, first_name, middle_name, last_name, passport, inn, snils, oms, base_inn, obj ) [исходный код] ¶
Номер кошелька пользователя
Type: | str |
---|
birth_date ¶
Дата рождения пользователя
Type: | str |
---|
first_name ¶
Type: | str |
---|
middle_name ¶
Type: | str |
---|
last_name ¶
Type: | str |
---|
passport ¶
Серия и номер паспорта пользователя
Номер СНИЛС пользователя
Номер полиса ОМС пользователя
Идентификация кошелька выполнена? (Используются варианты предлагаемые документацией Qiwi API)
Type: | bool |
---|
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: | |
---|---|
Тип результата: | Инстанс этого класса из созданного json dict’а или строки |
class pyqiwi.types. JsonDeserializable [исходный код] ¶
Субклассы этого класса гарантированно могут быть созданы из json-подобного dict’а или форматированной json строки Все субклассы этого класса должны перезаписывать de_json
Содержит в себе исходные данные от Qiwi API
Type: | . |
---|
static check_json ( json_type ) [исходный код] ¶
Проверяет, json_type или dict или str. Если это dict, возвращает его в исходном виде Иначе, возвращает dict созданный из json.loads(json_type)
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: | |
---|---|
Тип результата: | Инстанс этого класса из созданного json dict’а или строки |
static decode_date ( date_string: str ) [исходный код] ¶
Декодирует дату из строки вида отправляемого Qiwi API ISO-8601
Результат: | |
---|---|
Тип результата: | datetime.datetime данной строки |
class pyqiwi.types. MobilePinInfo ( mobile_pin_used, last_mobile_pin_change, next_mobile_pin_change, obj ) [исходный код] ¶
Данные о PIN-коде мобильного приложения QIWI Кошелька
Логический признак использования PIN-кода (фактически означает, что мобильное приложение используется)
Type: | bool |
---|
last_mobile_pin_change ¶
Дата/время последнего изменения PIN-кода мобильного приложения QIWI Кошелька
Type: | datetime.datetime |
---|
next_mobile_pin_change ¶
Дата/время следующего (планового) изменения PIN-кода мобильного приложения QIWI Кошелька
Type: | datetime.datetime |
---|
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: | |
---|---|
Тип результата: | Инстанс этого класса из созданного json dict’а или строки |
class pyqiwi.types. OnlineCommission ( provider_id, withdraw_sum, enrollment_sum, qw_commission, funding_source_commission, withdraw_to_enrollment_rate, obj ) [исходный код] ¶
Type: | int |
---|
withdraw_sum ¶
Общая сумма платежа
Type: | TransactionSum |
---|
enrollment_sum ¶
Сумма платежа с учетом комиссии
Type: | TransactionSum |
---|
qw_commission ¶
Type: | TransactionSum |
---|
funding_source_commission ¶
Комиссия платежной системы(если Qiwi, то всегда 0)
Type: | TransactionSum |
---|
withdraw_to_enrollment_rate ¶
Type: | float/int |
---|
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: | |
---|---|
Тип результата: | Инстанс этого класса из созданного json dict’а или строки |
class pyqiwi.types. PassInfo ( last_pass_change, next_pass_change, password_used, obj ) [исходный код] ¶
Данные о пароле к сайту qiwi.com
Дата/время последнего изменения пароля сайта qiwi.com
Type: | str |
---|
next_pass_change ¶
Дата/время следующего (планового) изменения пароля сайта qiwi.com
Type: | str |
---|
password_used ¶
Логический признак использования пароля (фактически означает, что пользователь заходит на сайт)
Type: | bool |
---|
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: | |
---|---|
Тип результата: | Инстанс этого класса из созданного json dict’а или строки |
class pyqiwi.types. Payment ( _id, terms, fields, _sum, transaction, source, comment, obj ) [исходный код] ¶
Данные о принятом платеже
Клиентский ID транзакции (В этой библиотеке, он считается 1000*Unix timestamp)
Type: | str |
---|
fields ¶
Данные о сумме платежа
Type: | str |
---|
comment ¶
Комментарий к платежу
Type: | Optional[str] |
---|
transaction ¶
Данные о транзакции в процессинге
Type: | Payment.Transaction |
---|
class Transaction ( _id, state, obj ) [исходный код] ¶
Данные о транзакции в процессинге
Статус транзакции(в момент написания, только Accepted)
Type: | str |
---|
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: | |
---|---|
Тип результата: | Инстанс этого класса из созданного json dict’а или строки |
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: | |
---|---|
Тип результата: | Инстанс этого класса из созданного json dict’а или строки |
class pyqiwi.types. PaymentFields [исходный код] ¶
Данный класс представляет из себя хаотичную структуру(но всегда присутствует «account») Судя по документации Qiwi API, создается из исходного поля fields для платежа
Если вы хотите посмотреть исходный вид выданный Qiwi API, используйте str(PaymentFields)
Type: | str |
---|
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: | |
---|---|
Тип результата: | Инстанс этого класса из созданного json dict’а или строки |
class pyqiwi.types. PinInfo ( pin_used, obj ) [исходный код] ¶
Данные о PIN-коде к приложению QIWI Кошелька на QIWI терминалах
Логический признак использования PIN-кода (фактически означает, что пользователь заходил в приложение)
Type: | bool |
---|
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: | |
---|---|
Тип результата: | Инстанс этого класса из созданного json dict’а или строки |
class pyqiwi.types. Profile ( auth_info, contract_info, user_info, obj ) [исходный код] ¶
Профиль пользователя Visa QIWI Кошелька
Настройки авторизации пользователя
Type: | Optional[ AuthInfo ] |
---|
contract_info ¶
Информация о кошельке пользователя
Type: | Optional[ ContractInfo ] |
---|
user_info ¶
Прочие пользовательские данные
Type: | Optional[ UserInfo ] |
---|
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: | |
---|---|
Тип результата: | Инстанс этого класса из созданного json dict’а или строки |
class pyqiwi.types. Statistics ( incoming_total, outgoing_total, obj ) [исходный код] ¶
Данные о входящих платежах (пополнениях), отдельно по каждой валюте
Type: | list[ TransactionSum ] |
---|
outgoing_total ¶
Данные об исходящих платежах, отдельно по каждой валюте
Type: | list[ TransactionSum ] |
---|
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: | |
---|---|
Тип результата: | Инстанс этого класса из созданного json dict’а или строки |
class pyqiwi.types. Transaction ( txn_id, person_id, date, error_code, error, status, _type, status_text, trm_txn_id, account, _sum, commission, total, provider, source, comment, currency_rate, features, view, obj ) [исходный код] ¶
ID транзакции в процессинге
Type: | int |
---|
person_id ¶
Дата/время платежа, время московское
Type: | datetime.datetime |
---|
error_code ¶
Код ошибки платежа
Type: | int/float |
---|
error ¶
Type: | str |
---|
status ¶
Type: | str |
---|
status_text ¶
Текстовое описание статуса платежа
Type: | str |
---|
trm_txn_id ¶
Клиентский ID транзакции
Type: | str |
---|
account ¶
Номер счета получателя
Данные о сумме платежа
Type: | TransactionSum |
---|
commission ¶
Данные о комиссии платежа
Данные об общей сумме платежа
Type: | TransactionSum |
---|
provider ¶
Данные о провайдере
Type: | TransactionProvider |
---|
comment ¶
Комментарий к платежу
Type: | str |
---|
currency_rate ¶
Курс конвертации (если применяется в транзакции)
Type: | float/int |
---|
source ¶
Type: | . |
---|
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: | |
---|---|
Тип результата: | Инстанс этого класса из созданного json dict’а или строки |
class pyqiwi.types. TransactionProvider ( _id, short_name, long_name, logo_url, description, keys, site_url, obj ) [исходный код] ¶
Данные о провайдере
ID провайдера в процессинге
Type: | int |
---|
short_name ¶
Краткое наименование провайдера
Type: | str |
---|
long_name ¶
Развернутое наименование провайдера
Type: | str |
---|
logo_url ¶
Cсылка на логотип провайдера
Type: | str |
---|
description ¶
Описание провайдера (HTML)
Список ключевых слов
Type: | str |
---|
site_url ¶
Type: | str |
---|
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: | |
---|---|
Тип результата: | Инстанс этого класса из созданного json dict’а или строки |
class pyqiwi.types. TransactionSum ( amount, currency, obj ) [исходный код] ¶
Type: | float/int |
---|
currency ¶
Type: | str |
---|
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: | |
---|---|
Тип результата: | Инстанс этого класса из созданного json dict’а или строки |
class pyqiwi.types. UserInfo ( default_pay_currency, default_pay_source, email, first_txn_id, language, operator, phone_hash, promo_enabled, obj ) [исходный код] ¶
Прочие пользовательские данные
Код валюты баланса кошелька по умолчанию (number-3 ISO-4217)
Type: | int |
---|
default_pay_source ¶
Type: | str |
---|
first_txn_id ¶
Номер первой транзакции пользователя после регистрации
Type: | int |
---|
language ¶
Название мобильного оператора номера пользователя
Type: | str |
---|
phone_hash ¶
Type: | . |
---|
promo_enabled ¶
Type: | . |
---|
classmethod de_json ( json_type ) [исходный код] ¶
Возвращает инстанс этого класса из созданного json dict’а или строки Эта функция должна быть перезаписана для каждого субкласса
Результат: | |
---|---|
Тип результата: | Инстанс этого класса из созданного json dict’а или строки |
Exceptions¶
Type: | str |
---|
method_name ¶
Название метода, вызванного при возникновении ошибки
Type: | str |
---|
request ¶
Чистый ответ от сервера, полученный от requests
Type: | requests.Response |
---|
response ¶
Текст выданный Qiwi API, без какой либо обработки
Type: | str |
---|
method ¶
Метод вызванный на сервере Qiwi
Type: | str |
---|
params ¶
Параметры вызванного метода