Skip to main content

Простая синхронная/асинхронная библиотека для работы с API ЮMoney

Project description

ayoomoney — простая синхронная/асинхронная библиотека для работы с API ЮMoney

Установка

pip install ayoomoney

Авторизация приложения

  1. Зарегистрируйте новое приложение YooMoney по ссылке https://yoomoney.ru/myservices/new

    • В полях "Адрес сайта" и "Redirect URI" укажите адрес: http://my.localhost
    • Чекбокс "Проверять подлинность приложения (OAuth2 client_secret)" должен быть отключен
  2. Получите и скопируйте client_id после создания приложения

  3. Получение access-токена

    Во всех методах используются все доступные разрешения/scope, вы можете указать нужные вам разрешения через запятую, используя параметр --scope, пример: --scope account-info,operation-details,operation-history

    • Автоматическое получение
    python -m ayoomoney.auth auto <client_id> http://my.localhost
    
    • Ручное получение
    python -m ayoomoney.auth simple <client_id> http://my.localhost
    

    Во время перенаправления по redirect_uri в адресной строке появится параметр code=. Скопируйте значение и вставьте его в консоль

    Если авторизация прошла успешно, в консоли отобразится Ваш access-token.

Получение основной информации об аккаунте

from ayoomoney.types import AccountInfo, OperationHistory, OperationDetails
from ayoomoney.wallet import YooMoneyWalletAsync, YooMoneyWallet


def sync_example():
   wallet = YooMoneyWallet(access_token="ACCESS_TOKEN")

   account_info: AccountInfo = wallet.account_info()
   operation_history: OperationHistory = wallet.get_operation_history()
   operation_details: OperationDetails = wallet.get_operation_details(operation_id="42")
    
   wallet.close()

async def async_example():
   wallet = YooMoneyWalletAsync(access_token="ACCESS_TOKEN")

   account_info: AccountInfo = await wallet.account_info()
   operation_history: OperationHistory = await wallet.get_operation_history()
   operation_details: OperationDetails = await wallet.get_operation_details(operation_id="42")
   
   await wallet.close()
   

if __name__ == "__main__":
   sync_example()

   # import asyncio
   # asyncio.run(async_example())

Создание платёжной формы и проверка оплаты

import asyncio
from ayoomoney.wallet import YooMoneyWalletAsync, PaymentSource


async def main():
   wallet = YooMoneyWalletAsync(access_token="ACCESS_TOKEN")

   payment_form = await wallet.create_payment_form(
      amount_rub=2,
      unique_label="myproject",
      payment_source=PaymentSource.YOOMONEY_WALLET,
      success_redirect_url="https://www.youtube.com/watch?v=dQw4w9WgXcQ&pp=ygUJcmljayByb2xl"
   )
   # проверка платежа по label
   payment_is_completed: bool = await wallet.check_payment_on_successful(
      payment_form.payment_label
   )

   print(
      f"Ссылка на оплату:\n{payment_form.link_for_customer}\n\n"
      f"Форма оплачена: {'Да' if payment_is_completed else 'Нет'}"
   )
   
   await wallet.close()


if __name__ == "__main__":
   asyncio.run(main())

Поддержка проекта

Если вы обнаружили ошибку или хотите предложить идею для улучшения проекта, создайте issue.

Если у вас есть возможность и желание внести улучшения в проект, отправляйте pull request.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ayoomoney-1.0.4.tar.gz (9.4 kB view details)

Uploaded Source

Built Distribution

ayoomoney-1.0.4-py3-none-any.whl (10.8 kB view details)

Uploaded Python 3

File details

Details for the file ayoomoney-1.0.4.tar.gz.

File metadata

  • Download URL: ayoomoney-1.0.4.tar.gz
  • Upload date:
  • Size: 9.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.6

File hashes

Hashes for ayoomoney-1.0.4.tar.gz
Algorithm Hash digest
SHA256 ed039aac700307984d37540d7daef3aafc7e544fa5733dadbe0b0e5f10bed443
MD5 2c65e9929d422bf80b2a95cb7afc5776
BLAKE2b-256 0fc0ecb1ffd4286dd307b0776a63596140b4680df5435f0638bd6a7519744ccf

See more details on using hashes here.

File details

Details for the file ayoomoney-1.0.4-py3-none-any.whl.

File metadata

  • Download URL: ayoomoney-1.0.4-py3-none-any.whl
  • Upload date:
  • Size: 10.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.6

File hashes

Hashes for ayoomoney-1.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 e5e8e42e716513d5d643a49775b29f63a6305205b6b454d121d2179c611247b1
MD5 a1f2df73f3ae9f3662f502a5f8d3a42c
BLAKE2b-256 ba8e35f5e6d70f4b6a8915e41f57ba4e3d77c68baa79a205104026510ffcba4f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page