Оплата с помощью ЮКасса в 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']