BacodoBACODO

Дополнение FastAPI

Интеграция Stripe для FastAPI

Добавьте официальный Stripe Python SDK, APIRouter и веб-перехватчик, который проверяет подпись Stripe в await request.body(). FastAPI — это API — это не Django, не DRF, и он не собирает карты.

  • Полный исходный код включен и ваш навсегда
  • Дополнительный лицензионный ключ или повторяющаяся лицензия не требуются.
  • Готов к производству и протестирован
  • Интегрирован в существующий проект и стек FastAPI.
  • Включена техническая поддержка в течение 30 дней после передачи
  • Дополнительная расширенная техническая поддержка на 6 месяцев за 20 % от стоимости дополнения.

От

$229

USD · FastAPI

Интеграция Stripe для FastAPI · FastAPI

Полный исходный кодНет лицензионного ключаГотов к производствуПротестированная интеграция30-дневная поддержка

Requirements

What Интеграция Stripe для FastAPI needs

  • Существующий проект на FastAPI
  • Доступ к Stripe Test Mode
  • Для платёжного интерфейса нужен фронтенд

Доступ к репозиторию не нужен. Доступ к проекту требуется, только если Bacodo должен интегрировать решение напрямую.

Что делает

Полоса в вашем приложении FastAPI — маршрут не является карточной формой.

Bacodo интегрирует Stripe в уже существующий проект FastAPI. После передачи маршрутизаторы, зависимости и настройки сохраняются в вашем репозитории. Вы по-прежнему владеете учетной записью Stripe, ключами API и комиссиями Stripe. FastAPI никогда не хранит PAN.

Проблема, которую он решает

Для производственного пути FastAPI Stripe требуется официальный пакет Stripe, создание PaymentIntent в зависимости или сервисе и Construction_event в необработанных байтах запроса. Если вы сначала ожидаете request.json(), проверка подписи завершится неудачно. Это обычная ошибка веб-перехватчика FastAPI.

Как это отражается в проекте

Мы добавляем APIRouter, pydantic-settings (или ваши существующие настройки), конечную точку создания намерения с моделью запроса Pydantic и веб-перехватчик, который использует await request.body(). Запись заказов осуществляется через SQLAlchemy, уже имеющийся у вас репозиторий или любое другое хранилище, которое уже использует приложение FastAPI, а не Django ORM.

Почему это экономит время разработки

Ваша команда пропускает первую производственную реализацию FastAPI Stripe: необработанные веб-перехватчики, идемпотентную обработку событий, PaymentIntents с поддержкой SCA и передачу, которая документирует ключи от тестирования к работе.

Для кого это

Разработчики серверной части Python и агентства, которые уже используют FastAPI. Если ваш API — Django, то есть интеграция Stripe для Django — мы не вставляем urls.py в приложение FastAPI.

Ключевые возможности

Что входит в Интеграция Stripe для FastAPI

Официальный Stripe SDK за маршрутизатором FastAPI

Создайте PaymentIntents с помощью библиотеки Stripe Python из зависимости или службы FastAPI. Секретный ключ поступает из Settings/env, а не из модели Pydantic, которую публикует клиент.

Webhook использует request.body(), а не request.json().

Stripe.Webhook.construct_event требует именно тех байтов, которые подписаны Stripe. Маршрут FastAPI читает await request.body() и заголовок Stripe-Signature. Из-за анализа JSON в первую очередь интеграция FastAPI Stripe терпит неудачу в производстве.

Состояние заказа FastAPI после pay_intent.succeeded

Выполнение запускается в обработчике FastAPI после успешного завершенияstruct_event, а не после страницы с благодарностью. Мы обновляем существующий заказ или запись о правах.

Тестовый режим FastAPI, затем активные ключи Stripe

Сначала отправьте FastAPI с тестовыми ключами Stripe и секретом веб-перехватчика. Запуск в эксплуатацию — это документированное переключение конечной точки env и Dashboard, а не дополнительная лицензия.

Идемпотентная обработка веб-перехватчика FastAPI

Полоса повторяет попытку. Обработчик FastAPI отключает event.id (или идентификатор PaymentIntent), чтобы дубликат POST не выполнялся дважды.

Ваши клиенты FastAPI остаются клиентами

React, Next.js или мобильное приложение получают от этого приложения FastAPI только публикуемый ключ и недолговечный client_secret. Это дополнение представляет собой путь к серверу FastAPI, а не элементы внутри шаблона Jinja.

Сценарии

Когда подходит Интеграция Stripe для FastAPI

Существующий API коммерции или бронирования FastAPI

Вы уже создаете заказы в FastAPI, и вам нужен API для создания PaymentIntents и пометки заказов, оплаченных с помощью веб-перехватчиков.

Агентство передает клиентский API FastAPI в производство

Вам нужен поддерживаемый маршрутизатор Stripe в FastAPI, исходный код в клиентском репозитории и документированное переключение с использованием живого ключа вместо одноразового сценария рядом с main.py.

SaaS оплачивается через приложение FastAPI

FastAPI создает первый PaymentIntent или прикрепляет метод оплаты. Регулярный биллинг Stripe Billing остается на сервере. Для тяжелой работы по выставлению счетов может потребоваться индивидуальное предложение.

FastAPI за отдельным интерфейсом

Next.js, React или мобильные устройства уже вызывают это приложение FastAPI. Интеграция Stripe для FastAPI — это только сторона API. Интерфейс Stripe.js — это другая платформа, если вам это тоже нужно.

Демо

Предварительный просмотр пути веб-перехватчика FastAPI Stripe

Просмотрите путь к серверу FastAPI: создайте PaymentIntent, получите POST /webhooks/stripe, Construct_event в request.body(), обновите состояние заказа. Живая песочница для вашей учетной записи Stripe доступна после проверки совместимости. Эта страница не обрабатывает реальные платежи и не собирает карты в FastAPI.

Как это работает

Как осуществляется интеграция Stripe для FastAPI

Стандартный рабочий процесс надстройки Bacodo со специфичными для FastAPI проверками uvicorn, настройками pydantic, вызовами асинхронной или синхронизирующей полосы, а также хранилищем, которое уже используют ваши маршруты.

  1. 01

    Выберите полосу FastAPI.

    Подтвердите интеграцию Stripe для FastAPI и укажите, будет ли первый день PaymentIntents, Checkout Sessions или и то, и другое в приложении FastAPI.

  2. 02

    Проверка совместимости FastAPI

    Просмотрите версии FastAPI/Python, pydantic v2, существующее сохранение порядка (SQLAlchemy или другое), зависимости аутентификации и наличие у вас уже учетной записи Stripe.

  3. 03

    Интеграция с FastAPI

    Добавьте пакет Stripe, APIRouter, конечную точку создания намерения и веб-перехватчик, который проверяет подписи в await request.body().

  4. 04

    Настройте приложение FastAPI

    Настройки передачи из env: секретный ключ, публикуемый ключ для клиентов, секрет веб-перехватчика и общедоступный URL-адрес HTTPS, который будет вызываться.

  5. 05

    Проверьте путь оплаты FastAPI

    Запускайте тестовые события Stripe CLI или Dashboard с помощью веб-перехватчика FastAPI, а также пути создания и отклонения. Подтвердите, что request.json() не сможет подписать подпись, как ожидалось.

  6. 06

    Передача источника FastAPI

    Предоставьте исходный код FastAPI, примечания к окружению и контрольный список действующих ключей. Реализация FastAPI остается за вами.

Архитектура

Как Stripe подключается к проекту FastAPI

Процесс FastAPI содержит секретный ключ. Клиенты запрашивают маршрут FastAPI для создания PaymentIntent. Stripe уведомляет FastAPI с помощью веб-перехватчика. FastAPI проверяет подпись в request.body(), затем записывает состояние заказа.

Клиентское приложениеМаршрутизатор FastAPIполосатый Python SDKПлатежные намерения StripeВебхук → request.body()Ваш магазин / SQLAlchemy

Поддерживаемые технологии

Что Интеграция Stripe для FastAPI реально использует

FastAPI на Python

Текущий FastAPI в версии Python, которую принимает Stripe SDK, обычно обслуживается uvicorn. Это не Django и не Flask — мы не добавляем urls.py или чертежи Flask.

Официальная полосатая библиотека Python

PaymentIntents, сеансы оформления заказа и Webhook.construct_event. Вызовы синхронизации из асинхронных маршрутов ограничиваются честно (threadpool или StripeClient async) — мы не притворяемся, что блокировка полосы бесплатна внутри async def.

Ваша постоянство FastAPI

Обновления заказов или прав остаются в SQLAlchemy, другом хранилище или уже имеющемся репозитории. Это дополнение не изобретает модель Django.

Учетная запись Stripe для приложения FastAPI

Ваша учетная запись Stripe, тестовые и действующие ключи, используемые FastAPI, конечной точкой веб-перехватчика и событиями информационной панели. Плата за обработку Stripe остается за Stripe.

Требуется хостинг FastAPI

Хост, который может запускать uvicorn (или его аналог) и получать HTTPS POST от Stripe. Статический сайт не может размещать этот путь веб-перехватчика FastAPI.

Что входит

Что включает в себя интеграция Stripe для FastAPI

  • Интеграция в существующий проект FastAPI
  • Полный исходный код в вашем репозитории
  • Настройки, APIRouter и маршрут веб-перехватчика
  • PaymentIntent или Checkout Session создают путь, который нужен этому API
  • request.body() отмечает, чтоstruct_event фактически проверяет
  • Перед передачей протестированы веб-перехватчик FastAPI и потоки намерений.
  • Примечания по передаче для переключения между тестированием и эксплуатацией
  • 30-дневная техническая поддержка после передачи

Не входит в дополнительную цену

  • Учетная запись Stripe, ключи API и плата за обработку Stripe — они принадлежат вам.
  • Новая витрина или пользовательский интерфейс Stripe.js — FastAPI — это API.
  • Переписывание FastAPI на Django
  • Marketplace Connect, пользовательские продукты для выставления счетов или замена покупок в приложении, если они не рассматриваются как пользовательская работа.

Pricing

Интеграция Stripe для ценообразования FastAPI

Эта цена указана только для платформы FastAPI. Он не использует цены на надстройки Django, NestJS, Next.js, React или Flutter.

Интеграция Stripe для FastAPI

Добавьте готовые к использованию Stripe PaymentIntents и подписанные веб-перехватчики в существующее приложение FastAPI и сохраните исходный код.

Требования

  • Существующий проект на FastAPI
  • Доступ к Stripe Test Mode
  • Для платёжного интерфейса нужен фронтенд

$229

разово

FastAPI

Нужен фронтенд?

  • Полный исходный код
  • Без лицензионной платы
  • 30 дней поддержки
  • Полная интеграция

Безопасная оплата черезstripe

Передача и безопасность

Практика доставки и безопасности FastAPI

Предполагаемая доставка FastAPI

Типичная интеграция FastAPI Stripe определяется после проверки совместимости FastAPI. Временная шкала зависит от вашего уровня персистентности и от того, как клиенты вызывают FastAPI.

Протестировано на FastAPI перед передачей

Платежные намерения, подписи веб-перехватчиков, повторные попытки и пути отклонения в тестовом режиме проверяются перед передачей приложения FastAPI.

Секреты Stripe остаются в настройках FastAPI

Секретные ключи и секреты подписи веб-перехватчиков остаются в среде сервера. Клиенты получают только публикуемый ключ или недолговечный client_secret.

Проверка вебхука перед записью FastAPI

Маршрут веб-перехватчика FastAPI проверяет подписи Stripe в необработанном теле перед обновлением состояния заказа или прав.

Никаких непроверяемых заявлений о безопасности FastAPI.

Мы не претендуем на сертификацию PCI, отсутствие мошенничества или гарантированный уровень одобрения. FastAPI не хранит PAN. Данные карты собираются Stripe Checkout или Elements на клиенте, а не специальной формой FastAPI, которую мы сохраняем.

FAQ

Частые вопросы

Что включает в себя интеграция Stripe для FastAPI?

Интеграция Stripe для FastAPI включает в себя официальный Stripe Python SDK, FastAPI APIRouter, конечную точку create-PaymentIntent, веб-перехватчик, который вызываетstruct_event в await request.body(), обновления состояния заказа в вашем существующем магазине, тесты на тестовые события Stripe и заметки о передаче. Вы получаете исходный код FastAPI в свой проект. Комиссия Stripe и ваша учетная запись Stripe разделены.

Будете ли вы интегрировать Stripe в наш существующий проект FastAPI?

Да. Интеграция Stripe для FastAPI создана для уже имеющегося у вас приложения FastAPI. Мы встраиваем маршрутизаторы, зависимости и настройки в ваш текущий проект FastAPI вместо того, чтобы поставлять отдельное демонстрационное приложение в качестве результата.

Собирает ли Stripe Integration для FastAPI номера карт в FastAPI?

Нет. FastAPI не должен хранить PAN. Клиенты используют Stripe Checkout или Elements. Интеграция Stripe для FastAPI владеет серверными объектами PaymentIntents, веб-перехватчиками и записью заказов. Пользовательская форма FastAPI, которая публикует необработанные данные карты, выходит за рамки области действия по умолчанию.

Какой пакет Stripe использует интеграция Stripe для FastAPI?

Интеграция Stripe для FastAPI использует официальную библиотеку Python для PaymentIntents, сеансов оформления заказа и Webhook.construct_event. Мы не помещаем платежи FastAPI в недокументированный плагин, если только вам это явно не требуется.

Почему интеграция Stripe для FastAPI настаивает на request.body()?

Stripe.Webhook.construct_event проверяет точные байты, подписанные Stripe. await request.json() анализирует и изменяет это тело. Интеграция Stripe для FastAPI читает await request.body() на маршруте веб-перехватчика. Это обычный сбой проверки подписи FastAPI, если вы его пропустите.

Интеграция Stripe для FastAPI — это то же самое, что Django?

Нет. FastAPI использует APIRouter, Depends и pydantic-settings. Представления Django, urls.py и Django ORM — это интеграция Stripe для Django. Мы не вставляем шаблоны Django в приложение FastAPI.

Может ли интеграция Stripe для FastAPI собирать платежи по подписке?

FastAPI может создать сеанс PaymentIntent или Checkout и сохранить идентификатор клиента Stripe. Продукты повторяющегося биллинга Stripe, клиентский портал и логика выставления счетов остаются на сервере. Для работы FastAPI с большим объемом подписки может потребоваться специальная цена.

Где в приложении FastAPI хранятся публикуемые и секретные ключи Stripe?

Процесс FastAPI использует секретный ключ и секрет подписи веб-перехватчика из настроек/переменных среды. Клиенты получают только публикуемый ключ. Интеграция Stripe для FastAPI не помещает секретные ключи в модели запросов Pydantic.

Как режим тестирования Stripe и режим реального времени работают в FastAPI?

Мы реализуем интеграцию Stripe для FastAPI с тестовыми ключами Stripe и сначала тестируем события веб-перехватчика. Запуск — это задокументированное переключение ключа и конечной точки в вашей панели управления Stripe и среде FastAPI, а не активация дополнительной лицензии.

Как интеграция Stripe для FastAPI обрабатывает 3-D Secure/SCA?

FastAPI создает PaymentIntents, поддерживающие SCA. Клиент выполняет 3-D Secure с помощью Stripe.js или Checkout. FastAPI выполняется только после того, как pay_intent.succeeded на веб-перехватчике, а не только после перенаправления браузера.

Требуются ли веб-хуки Stripe для проверки FastAPI?

Да, для выполнения после созданного FastAPI сеанса PaymentIntent или Checkout. FastAPI 200 для клиента не является источником истины. Маршрут веб-перехватчика проверяет подписи, а затем отмечает оплаченный заказ.

Можем ли мы сохранить SQLAlchemy с интеграцией Stripe для FastAPI?

Да. Интеграция Stripe для FastAPI обычно добавляет поля или тонкую запись платежа рядом с существующей моделью заказов FastAPI вместо замены SQLAlchemy или изобретения модели Django.

Включает ли цена интеграции Stripe для FastAPI учетную запись Stripe или комиссию?

Нет. Вы создаете и владеете учетной записью Stripe, ключами API и комиссией за обработку Stripe. Дополнительная цена FastAPI — это внедрение в ваш проект FastAPI, а не платежная лицензия Bacodo.

Блокирует ли интеграция Stripe для FastAPI цикл событий с вызовами полосы синхронизации?

Мы честно проверяем это во время проверки совместимости FastAPI. Блокирующие вызовы полосы внутри async def перемещаются в пул потоков или мы используем асинхронный клиент Stripe, где это поддерживается закрепленной версией полосы. Мы не претендуем на то, чтобы полоса синхронизации была бесплатной в асинхронном маршруте FastAPI.

Можем ли мы настроить квитанции и метаданные Stripe в FastAPI?

Да. Метаданные сеанса PaymentIntent или Checkout, записи клиентов и поля, которые вы сохраняете после подтверждения веб-перехватчика, приводятся в соответствие с существующей моделью заказов FastAPI во время интеграции Stripe для FastAPI.

Какая поддержка FastAPI включается после передачи Stripe?

Исходный код FastAPI находится в вашем репозитории, поэтому ваша команда может его поддерживать. Включенная 30-дневная поддержка охватывает технические вопросы и дефекты в поставляемой интеграции Stripe для FastAPI, а не работу несвязанных функций FastAPI.

Как обрабатываются обновления полосы или FastAPI после интеграции?

В течение 30-дневного периода мы помогаем устранить сбои в предоставленной интеграции FastAPI, вызванные задокументированным изменением Stripe API или пакета Stripe. Постоянные обновления FastAPI после этого — это ваше обслуживание или расширенная техническая поддержка, если вы его купите.

Что, если платежи Stripe не будут выполнены в рабочем приложении FastAPI?

Мы документируем, как читать статус PaymentIntent, журналы Stripe Dashboard и доставку веб-перехватчика FastAPI. 30-дневная поддержка включает устранение сбоев подписи (обычно request.json() вместо request.body()), повторных попыток и неправильной настройки ключей для доставленного потока FastAPI.

Какие версии FastAPI совместимы с интеграцией Stripe для FastAPI?

Мы подтверждаем ваши версии FastAPI, Python и pydantic v2 относительно выпуска полосы, который мы закрепляем во время интеграции. Старым или сильно разветвленным средам выполнения FastAPI могут потребоваться дополнительные возможности.

Что такое 30-дневная поддержка по сравнению с 6-месячной расширенной технической поддержкой для интеграции Stripe для FastAPI?

30 дней после передачи включены в доставленный путь FastAPI Stripe. Расширенная техническая поддержка является необязательной, ее стоимость составляет 20 % от стоимости дополнения к FastAPI, и она покрывает еще шесть месяцев технической помощи по той же интеграции FastAPI, а не по созданию нового продукта.

Интеграция Stripe для FastAPI

Добавьте готовые к использованию платежи Stripe в существующее приложение FastAPI, сохраните исходный код и предоставьте возможность серверу самостоятельно выполнять операции.

$229