Skip to content

la1t/django_pay

Repository files navigation

DjangoPay2

image

Интеграция платежных систем для Django

Quickstart

Установите DjangoPay2:

pip install django_pay2

Добавьте приложение в `INSTALLED_APPS`:

INSTALLED_APPS = (
    ...
    'django_pay2',
    ...
)

Добавьте Django Pay's URLы в urlpatterns:

urlpatterns = [
    ...
    path('payments/', include('django_pay2.urls')),
    ...
]

Платежи

Любой платеж создается методом create<название-платежной-системы>_payment. Метод возвращает объект типа PaymentMethod. Существует два типа PaymentMethod — PaymentForm и RedirectMethod. Первый должен сериализовываться и отправляться на front. Второй можно либо также сериализовать и отправить на фронт, либо возвратить редирект.

Так же метод создает объект типа Payment. Эта модель отвечает за сохранение информации о платеже, а так же об объекте-инициаторе платежа. После успешной оплаты он отправляет сигнал payment_received привязанному объекту.

TODO

  • [*] Сериализаторы для PaymentForm и RedirectMethod
  • [ ] Интеграция с free_kassa
  • [ ] handle_form_debug проверяет, что ему пришла валидная форма
  • [*] Переписывание тестов на pytest
  • [ ] Инструкция по написанию собственных провайдеров
  • [ ] Инструкция по добавлению и настройке каждого провайдера
  • [ ] Более подробная инструкция по использованию
  • [*] Инструкция по увеличению версии

Разработка

Установка development зависимостей

::

pip install -r requirements_dev.txt

Запуск тестов

::

tox

Выпуск

  1. Установить новую версию в pyproject.toml' и __init__.py` файлах
  2. poetry publish --build

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published