Skip to content

la1t/django_pay

Repository files navigation

DjangoPay2

https://travis-ci.org/la1t/django_pay2.svg?branch=master

Интеграция платежных систем для 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