Как интегрировать новые платежные шлюзы с django-платежами? - PullRequest
0 голосов
/ 21 мая 2018

Я хочу интегрировать платежи для личного проекта Django, над которым я работаю.

Saleor использует django-платежей для обработки платежей.К сожалению, большинство из них не работают здесь, в Индии.Cybersource работает, но их транзакционные сборы немного выше по сравнению с платежными шлюзами из Индии.

Я бы хотел внедрить что-то вроде Razorpay или Instamojo в django-платежи такие, что я никоим образом не сломаю Saleor, но у меня нет ни малейшего представления о том, как начать.

Я клонирую пакет и что потом?Мне предложили использовать «пустышку» в качестве ссылки для реализации функциональности, но я понятия не имею, как проверить, работает ли она вообще.

Как мне поступить?Я также не вижу никаких руководящих принципов.Я тоже не против внести свой вклад в репо.Я просто хочу, чтобы кто-то указал мне правильное направление, и я буду двигаться вперед оттуда.Спасибо!

1 Ответ

0 голосов
/ 31 июля 2018

Вы можете расширить модуль Django-payment , добавив к нему вот так.После установки Saleor и его зависимостей с pip install -r requirements.txt в виртуальной среде перейдите в папку среды и посмотрите в lib/pythonX.X/site-packages/payments.

Там вы найдете каталоги всех интегрированных провайдеров.Они выглядят так:

stripe/
├── forms.py
├── __init__.py
├── __pycache__
│   ├── ...
├── test_stripe.py
└── widgets.py

Используйте это как руководство для интеграции модулей Razorpay или Instamojo.Например, интеграция stripe использует модуль python stripe, тогда как sofort просто использует http-запросы.Основной класс Provider находится внутри файла __init__.py.После добавления интеграций измените settings.py в saleor/, чтобы новые методы добавлялись в качестве параметров извлечения.

Это, конечно, грязный способ добавления в модуль.Скорее клонируйте Django-платежи напрямую и внесите изменения, а затем установите их в своем проекте Saleor.

...