Интеграция платежного шлюза с Django-Oscar?

Я хочу интегрировать платежный шлюз с помощью oscar. Я интегрировал oscar-paypal, он отлично работает. Должен ли я следовать oscar-paypal и пытаться подражать ему? Этот документ не дает исходной информации, но не совсем?

Мне нужно это. Чтобы создать заказ, измените статус корзины, сделайте платежи, отправьте электронную почту и много других шагов, которые делает oscar-paypal.

Ответ 1

Следуя инструкциям Oscar Paypal, это довольно хорошая идея. Это довольно хорошо написанный проект. Есть фасады, написанные, которые абстрагируют детали общения с Paypal Express и PayFlow API. Затем функции фасада вызывается из views.py в каждом пакете, где начинается реальная интеграция с Oscar.

Например, реализация Paypal Express интегрирована с Oscar в основном путем подклассификации класса PaymentDetailsView и вызова необходимых функций, реализованных в paypal.express.facade пакет. Существует также ShippingOptionsView, который обеспечивает некоторую связь с доставкой Paypal.

Ответ 2

Я думаю, вы можете использовать payu, который также очень легко доступен и может быть настроен. pip install git+https://github.com/SalahAdDin/django-oscar-payu#egg=payu это будет клонировать приложение payu, которое имеет аналогичную реализацию как oscar-paypal. затем отредактируйте view.py в небезопасном режиме, перейдите через код и измените self.sessions.['currency'] на валюту, которую хотите использовать, но валюта по умолчанию, с которой она работает, равна INR. Затем ваш payment_detail.html просто скопирует то, что у вас есть, как в paypal, и измените URL-адрес PayPal на payu. Просто переключите paypal на payu. Это все.

кредит на https://github.com/SalahAdDin/

Ответ 3

Это показывает, как использовать прямую платежную систему в качестве платежного шлюза... Вы можете использовать PayPal checkout.js, а не django-oscar-paypal. Этот проект не мой, так что дайте кредит автору. Это может помочь... https://notathoughtexperiment.me/blog/building-a-full-ecommerce-site-part-4-integrating-paypal-checkout-express/