Stripe не работает после развертывания на Heroku с помощью Django

* Английский не является моим родным языком, поэтому если мой английский не правильный, пожалуйста, не обращайте внимания.

В локалке Stripe хорошо работал на Django. Но после развертывания Heroku, Stripe (сервис подписки) не работает. Когда я нажимаю кнопку "Оплатить", каждый раз появляется сообщение "Internet Error 500". Я проверил журналы Heroku, но подключение и сервис выглядят как нормальные.

Я пробовал развертывать снова и снова, но каждый раз результат один и тот же. Выдается сообщение "Internet Error 500".

Это журналы Heroku logs --tail

2024-03-19T08:03:27.576123+00:00 heroku[router]: at=info method=POST path="/checkout/" host=nagoyameshi-marina-32890ff7fdd2.herokuapp.com request_id=40d9d9e5-8ebf-436f-9254-2e862dcada7e fwd="126.15.11.7" dyno=web.1 connect=2ms service=19ms status=500 bytes=459 protocol=https
2024-03-19T08:03:27.576163+00:00 app[web.1]: 10.1.20.255 - - [19/Mar/2024:17:03:27 +0900] "POST /checkout/ HTTP/1.1" 500 145 "https://nagoyameshi-marina-32890ff7fdd2.herokuapp.com/terms_of_service/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36"

Вот мои settings.py и CheckoutView из views.py, которые я развернул на Heroku.

    if "STRIPE_PUBLISHABLE_KEY" in os.environ and "STRIPE_API_KEY" in os.environ and "STRIPE_PRICE_ID" in os.environ:
    STRIPE_PUBLISHABLE_KEY  = os.environ["STRIPE_PUBLISHABLE_KEY"]
    STRIPE_API_KEY          = os.environ["STRIPE_API_KEY"]
    STRIPE_PRICE_ID         = os.environ["STRIPE_PRICE_ID"]

 - CheckoutView
stripe.api_key  = settings.STRIPE_API_KEY
class CheckoutView(LoginRequiredMixin,View):
    def post(self, request, *args, **kwargs):
        checkout_session =stripe.checkout.Session.create(
            line_items=[
                {
                    'price':settings.STRIPE_PRICE_ID,
                    'quantity':1,
                },
            ],
            payment_method_types=['card'],
            mode='subscription',
            success_url=request.build_absolute_uri(reverse_lazy("nagoyameshi:success")) + '?session_id={CHECKOUT_SESSION_ID}',
            cancel_url=request.build_absolute_uri(reverse_lazy("nagoyameshi:index")),
        )

print( checkout_session["id"] )
return redirect(checkout_session.url)

checkout    = CheckoutView.as_view()

DB - это " Heroku Postgres".

Вернуться на верх