Django + Stripe API бэкенд для осуществления оплаты.
- Python 3.11;
- Django 5.0;
- Stripe;
- Docker;
- Gunicorn;
- Nginx.
- зарегистрируйтесь на сервисе Stripe для получения 'Publishable key' (STRIPE_PK) и 'Secret key' (STRIPE_SK);
- вам понадобиться ссылка: https://dashboard.stripe.com/test/apikeys;
- создайте файл .env и пропишите туда 'Publishable key' (STRIPE_PK) и 'Secret key' (STRIPE_SK) по аналогии с файлом env_example.
- по адресу ВМ (нужно указать его в .env в переменной CSRF_TRUSTED_ORIGINS в формате http://0.0.0.0).
- git clone --single-branch -b nginx https://github.com/Idvri/Payment_Backend.git;
- docker-compose up --build - в первый раз;
- docker-compose up.
- python manage.py csu - создать администратора. Логин и пароль: admin;
- python manage.py loaddata order_fixtures.json - наполнить БД данными из фикстур для заказов (Order);
- python manage.py loaddata items_fixtures.json - наполнить БД данными из фикстур для товаров (Item).
- http://your.site/admin - создание товаров (Item), заказов (Order), налогов (Tax) и скидок (Discount) в админ панели;
- http://your.site/buy/{id} или http://your.site/buy_order/{id} - создание сессии Stripe для дальнейшего осуществления покупки (GET);
- http://your.site/item/{id} - отображение информации о выбранном товаре (GET);
- http://your.site/order/{id} - отображение информации о выбранном заказе (GET);
- возможность осуществить покупку одного (Item) или нескольких (Order) товаров по кнопке "Buy" (происходит редирект на Checkout форму);
- http://your.site/buy_intent/{id} - создание Payment Intent (представляет собой намерение провести платеж между клиентом и продавцом (GET));
- http://your.site/confirm_intent - подтверждение Payment Intent (POST, тело (body) - {"payment": "payment_intent_id"}).