How to set Stripe as payment processor for Openedx Ecommerce?

53 views Asked by At

I am trying to set Stripe as payment processor for Openedx Ecommerce.

After entering the test card details I get this error -----> Error Image

tutor_dev-ecommerce-1         | 2023-11-20 13:08:48,435 ERROR 44 [django.request] /openedx/venv/lib/python3.8/site-packages/django/utils/log.py:224 - Internal Server Error: /payment/stripe/submit/
tutor_dev-ecommerce-1         | Traceback (most recent call last):
tutor_dev-ecommerce-1         |   File "/openedx/venv/lib/python3.8/site-packages/django/core/handlers/exception.py", line 47, in inner
tutor_dev-ecommerce-1         |     response = get_response(request)
tutor_dev-ecommerce-1         |   File "/openedx/venv/lib/python3.8/site-packages/django/core/handlers/base.py", line 181, in _get_response
tutor_dev-ecommerce-1         |     response = wrapped_callback(request, *callback_args, **callback_kwargs)
tutor_dev-ecommerce-1         |   File "/openedx/venv/lib/python3.8/site-packages/django/views/generic/base.py", line 70, in view
tutor_dev-ecommerce-1         |     return self.dispatch(request, *args, **kwargs)
tutor_dev-ecommerce-1         |   File "/openedx/venv/lib/python3.8/site-packages/oscar/apps/checkout/session.py", line 70, in dispatch
tutor_dev-ecommerce-1         |     return super().dispatch(
tutor_dev-ecommerce-1         |   File "/openedx/venv/lib/python3.8/site-packages/django/utils/decorators.py", line 43, in _wrapper
tutor_dev-ecommerce-1         |     return bound_method(*args, **kwargs)
tutor_dev-ecommerce-1         |   File "/openedx/venv/lib/python3.8/site-packages/django/contrib/auth/decorators.py", line 21, in _wrapped_view
tutor_dev-ecommerce-1         |     return view_func(request, *args, **kwargs)
tutor_dev-ecommerce-1         |   File "/openedx/ecommerce/ecommerce/extensions/payment/views/__init__.py", line 61, in dispatch
tutor_dev-ecommerce-1         |     return super(BasePaymentSubmitView, self).dispatch(request, *args, **kwargs)
tutor_dev-ecommerce-1         |   File "/openedx/venv/lib/python3.8/site-packages/django/views/generic/base.py", line 98, in dispatch
tutor_dev-ecommerce-1         |     return handler(request, *args, **kwargs)
tutor_dev-ecommerce-1         |   File "/openedx/ecommerce/ecommerce/extensions/payment/views/__init__.py", line 70, in post
tutor_dev-ecommerce-1         |     return self.form_valid(form)
tutor_dev-ecommerce-1         |   File "/openedx/ecommerce/ecommerce/extensions/payment/views/stripe.py", line 51, in form_valid
tutor_dev-ecommerce-1         |     payment_intent_id = form_data['payment_intent_id']
tutor_dev-ecommerce-1         | KeyError: 'payment_intent_id'
tutor_dev-ecommerce-1         | 2023-11-20 13:08:48,436 ERROR 44 [django.server] /openedx/venv/lib/python3.8/site-packages/django/core/servers/basehttp.py:161 - "POST /payment/stripe/submit/ HTTP/1.1" 500 166437
tutor_dev-ecommerce-1         | 2023-11-20 13:08:48,436 ERROR 44 [django.server] /openedx/venv/lib/python3.8/site-packages/django/core/servers/basehttp.py:161 - "POST /payment/stripe/submit/ HTTP/1.1" 500 166437

It creates a token here but a payment_intent_id is expected for the payment. So any one has idea how can I get it work.

0

There are 0 answers