Оплата с помощью ЮКасса в Django

Начал делать оплату в проекте django. Делаю по до документации. Создал платеж, а ответ получать то как? Оплата работает, все отлично, после этого он меня перенаправляет обратно на мой сайт. Это тестовые платежи.

class Confirmation(DataMixin, FormView):
    template_name = 'profiles/confirmation.html'

    def get(self, request, *args, **kwargs):
        Configuration.account_id = ''  # тут есть данные
        Configuration.secret_key = ''

        price = self.get_context_data().get('price')

        payment = Payment.create({
            "amount": {
                "value": f"{price}.00",
                "currency": "RUB"
            },
            "confirmation": {
                "type": "redirect",
                "return_url": "http://127.0.0.1:8000/confirmation"
            },
            "capture": True,
            "description": "Заказ №1"
        }, uuid.uuid4())
        return HttpResponseRedirect(payment.confirmation.confirmation_url)

Для задачи тестирования можно воспользоваться сервисом Ngrok. Это бывает удобнее, даже если хостинг уже есть. Данный сервис организует "туннель" к вашему localhost и выдаст вам временные https и http адреса вашего сайта для доступа извне.

Таким образом можно настроить/проверить функцию webhook-уведомлений, не прибегая к размещению проекта на хостинге.

Быстро, бесплатно, только регистрация.

И да, поскольку у вас Django, вероятна ситуация "Forbidden (403) CSRF verification failed". Поможет прописание строки в settings.py:

CSRF_TRUSTED_ORIGINS = ['https://example.com']
Вернуться на верх