Сервер создает платёжные формы для товаров для имитации и тестирования платежей, с помощью платёжной системы Stripe. Реализованы Django + Stripe API бэкенд со следующим функционалом:
- Django Модель Item с полями (name, description, price)
- API с двумя методами:
- GET /buy/{id}, c помощью которого можно получить Stripe Session Id для оплаты выбранного Item. При выполнении этого метода c бэкенда с помощью python библиотеки stripe выполняется запрос stripe.checkout.Session.create(...) и полученный session.id выдавается в результате запроса
- GET /item/{id}, c помощью которого можно получить простейшую HTML страницу, на которой будет информация о выбранном Item и кнопка Buy. По нажатию на кнопку Buy происходит запрос на /buy/{id}, получение session_id и далее с помощью JS библиотеки Stripe происходит редирект на Checkout форму stripe.redirectToCheckout(sessionId=session_id)
- Запуск используя Docker
- Использование environment variables(специально выгружены на github для тестирования)
- Просмотр Django Моделей в Django Admin панели
- Модель Order, в которой можно объединить несколько Item и сделать платёж в Stripe на содержимое Order c общей стоимостью всех Items
- Python 3.10
- Django 3.2
- Stripe
- Docker
git clone git@github.com:V-pix/payment_forms.gitcd payment_formshttps://docs.docker.com/get-docker/https://docs.docker.com/compose/docker build -t payment_forms .docker-compose up -ddocker-compose exec web python manage.py migratedocker-compose exec web python manage.py loaddata dump.jsonlogin: admin
password: 123