Загрузка...

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

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

Опрос
Была ли полезна данная тема?
  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. Посмотреть предыдущие комментарии (1)
    2. vuchaev2015
    3. vuchaev2015
      acceptance, бляха, откуда ты это взял удали
    4. Посмотреть следующие комментарии (2)
  3. PowerDevil
    PowerDevil 2 апр 2024 12 967 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
Загрузка...