Skip to main content

Пример интеграции FastAPI

Полный пример приложения FastAPI, показывающий как интегрировать PayTechUZ с FastAPI для обработки платежей.

📁 Полный проект

Полный рабочий пример FastAPI доступен на GitHub:

🔗 Пример PayTechUZ FastAPI

Этот пример включает:

  • ✅ Полная настройка приложения FastAPI
  • ✅ Модели базы данных и миграции
  • ✅ Интеграция платёжного шлюза (Payme & Click)
  • ✅ Webhook обработчики для уведомлений о платежах
  • ✅ Система управления заказами
  • ✅ API endpoints для создания платежей
  • ✅ Обработка ошибок и валидация

🚀 Быстрый старт

1. Клонировать пример

git clone https://github.com/PayTechUz/paytechuz.git
cd paytechuz/examples/paytechuz_fastapi

2. Установить зависимости

pip install -r requirements.txt

3. Настроить окружение

Создайте файл .env:

# Конфигурация Payme
PAYME_ID=your_payme_id
PAYME_KEY=your_payme_key

# Конфигурация Click
CLICK_SERVICE_ID=your_service_id
CLICK_MERCHANT_ID=your_merchant_id
CLICK_MERCHANT_USER_ID=your_merchant_user_id
CLICK_SECRET_KEY=your_secret_key

# База данных
DATABASE_URL=sqlite:///./payments.db

# Режим разработки
DEBUG=True

4. Запустить приложение

uvicorn main:app --reload

Приложение будет доступно по адресу: http://localhost:8000

📋 Основные функции

Создание заказа

POST /orders/
{
"product_name": "Тестовый продукт",
"amount": 50000,
"description": "Описание продукта"
}

Создание платежа

POST /payments/create
{
"order_id": 1,
"payment_method": "payme" # или "click"
}

Webhook endpoints

  • POST /payments/payme/webhook - Webhook для Payme
  • POST /payments/click/webhook - Webhook для Click

🔧 Структура проекта

paytechuz_fastapi/
├── main.py # Основное приложение FastAPI
├── models.py # Модели базы данных
├── schemas.py # Pydantic схемы
├── database.py # Настройка базы данных
├── payment_handlers.py # Обработчики платежей
├── requirements.txt # Зависимости
└── .env.example # Пример конфигурации

📚 Документация API

После запуска приложения, документация API будет доступна по адресу:

🔗 Полезные ссылки