Загрузка...

Создаём оплату через ЮMoney | API Yoomoney Python

Тема в разделе Python создана пользователем EsRoot 2 апр 2024. (поднята 31 окт 2024) 2838 просмотров

Опрос
Была ли полезна данная тема?
  1. Да

    94,7%
    18
  2. Нет

    5,3%
    1
  1. EsRoot
    EsRoot Автор темы 2 апр 2024 11 15 янв 2022
    :love2: Всем привет!

    В связи блокировки **** в РФ, как то необходимо принимать платежи в ботах или на сайтах, но как же это сделать? Ответ прост, через ЮMoney и в сегодняшней статье мы рассмотрим один из способов создания оплат на Python используя API Yoomoney.
    1. Python 3.9+
    2. Библиотека YooMoney
    Python
    pip install YooMoney
    3. Библиотека Requests
    Python
    pip install requests

    1. Зайдите в кошелек ЮMoney. Если кошелька нет, создайте его.
    2. Перейдите на страницу Регистрация приложения.
    3. Укажите параметры приложения:
    4. Нажмите на кнопку Подтвердить.

    После у вас откроется страница Данные приложения, где будут указаны название вашего приложения, его идентификатор (client_id) и, если выбрана соответствующая опция, сгенерированное секретное слово (client_secret). Я буду показывать без проверки подлинности!

    [IMG]

    В качестве redirect_uri, я указал Discord, позже поймете зачем.
    5. Запоминаем client_id и redirect_uri, они нам еще нужны.

    Создаем любой файл .py и вписываем в него данных код.
    Данный код позволит получить TOKEN вашего приложения для дальнейших манипуляций с API
    Python
    from yoomoney import Authorize

    Authorize(
    client_id="ВАШ_CLIENT_ID",
    redirect_uri="ВАШ_REDIRECT_URI",
    scope=["account-info",
    "operation-history",
    "operation-details",
    "incoming-transfers",
    "payment-p2p",
    "payment-shop",
    ]
    )
    После запуска кода в консоль напишется следующие сообщение:

    Это означает что вы все сделали правильно, теперь вам требуется отправить код, что бы получить код требуется перейти на сайт который был указан в консоли и жмякнуть на «Продолжить»,переходи тыкаем и подтверждаем все.






    [IMG]

    После подтверждения вас перекинет на сайт который вы указали в redirect_uri, но стоит нам посмотреть на ссылку сайт, то вы увидите тот самый код.
    [IMG]

    Теперь просто копируем ссылку и вставляем в консоль. Если вы все сделали правильно, то вы получите следующие сообщений из консоли. Это и есть наш TOKEN. Теперь нам нужно просто его запомнить и все.
    [IMG]

    Затем нам нужно получить номер аккаунта и проверить токен, это все делается через один простенький код.
    Python
    from yoomoney import Client

    TOKEN = "ВАШ_TOKEN"

    client = Client(TOKEN)
    user = client.account_info()
    print(user.account)
    После запуска кода в консоль выведется ваш номер аккаунт, его мы тоже запоминаем в дальнейшем он нам ещё понадобится для создания счетов на оплату.

    Счет на оплату можно создать через данный код
    Python
    from yoomoney import Quickpay
    quickpay = Quickpay(
    receiver="4100117476417051", # Номер вашего аккаунта
    quickpay_form="shop", # Это я хз зачем, но я это не трогаю
    targets="Sponsor this project", # Цели, я их не изменяю, потому что особой нужды в этом нет.
    paymentType="SB", # Это лучше не трогать
    sum=10, # Это сумма
    label="test123" # Это комментарий для проверки на наличие оплаты
    )


    print(quickpay.base_url)
    После запуска кода, вы получите ссылку для оплаты, если вы сделали все правильно, то ссылка будет работать. Теперь нам нужно запомнить label который вы указали, в моем случае это «test123».

    Теперь нам нужно проверить, получили ли мы оплату?
    Для этого требуется просто вставить этот код и заменить TOKEN на свой.
    Python
    from yoomoney import Client

    TOKEN = "ВАШ_TOKEN"

    client = Client(TOKEN)

    history = client.operation_history(label="test123") #Просмотр истории транзакций, label - комментарий который вы указали ранее

    if history.operations == []:
    print("Оплата не найдена!")

    for operation in history.operations:
    if operation.status == 'success':
    print("Оплата найдена!")

    После запуска кода, мы в консоль получим «Оплата найдена!», но стоит нам заменить label на «test123_zxc», то мы получим «Оплата не найдена!». Это связано с тем, что в истории ваших транзакций не нашлось чека и выше указанным label.

    В данной статье, я показал как принимать платежи используя API YooMoney. Если вы хотите принимать платежи от сразу нескольких лиц, то создайте базу данных в которой будете хранить Пользователя и универсальный для него label, затем просто обращайтесь к базе данных и вытаскивайте от туда его label и затем просто проверяйте на наличие оплаты.

    Если вам понравилась данная статья, то позже создам ещё две статья на подобные темы.
    1. Как подключить эту платежку к боту Discord и как работать с базой данных.
    2. Создание счетов для оплаты используя API Платежной системы Payok

    :love2: У меня в принципе все, спасибо за уделенное время, надеюсь смог чем то вам помочь. Если останутся вопросы, то пишите сюда или мне в TG - @roozzz1m :love2:
     
    2 апр 2024 Изменено
  2. acceptance
    acceptance 2 апр 2024 Все совпадения с данным профилем случайны. 2455 14 окт 2020
    локнут нахуй этот твой юмани
     
    1. Посмотреть предыдущие комментарии (3)
    2. vuchaev2015
      acceptance, бляха, откуда ты это взял удали
  3. PowerDevil
    PowerDevil 2 апр 2024 12 968 27 авг 2022



    Ну чел 4 принта что такое почему так мало принтов
     
    1. EsRoot Автор темы
      PowerDevil, Это разные части кода, для удобства я не стал делать все в одном полном коде. А принтовал я для того что бы новички в питоне, понимали что для чего. Если вам эта статья не интересна, то, пожалуйста, перестаньте писать всякий бред в комментарии.
  4. Reversiousfsdfsd
    Reversiousfsdfsd 2 апр 2024 Заблокирован(а) 418 27 мар 2024
    Полезно, можно даже рассматривать и другие платежки :)
     
  5. AGO
    AGO 4 апр 2024 Work 374 27 авг 2022
    Хуйня юмани мне его тоже блокнули
    Юзаю крипту
     
    1. Parsing
  6. darkbishop
    darkbishop 11 май 2024 0 16 апр 2021
    Какие лимиты у юмани для приемки ?
     
  7. Moorluck
    Moorluck 4 июл 2024 3 23 апр 2021
    Дай бог тебе здоровья!
     
  8. Ввфыфвфывф
    привет, подскажи как в питоне сделать именно запрос на подобную детализацию? Как выделено. Помоги именно с самим запросом остальное я сам напишу [IMG]
     
  9. KirpichikKolobka
    Функция Authorize просит какой то client_secret. Откуда взять ?
     
Top
Загрузка...