Перейти к содержанию
ERITKOM
БизнесРазбор

Stripe Data Pipeline отправляет платежи и подписки прямо в Postgres

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

Подключение Postgres в Stripe Data Pipeline
Изображение: Stripe. Официальный источник.

Платёжные сведения становятся частью приложения

15 октября Stripe анонсировала синхронизацию Data Pipeline с Postgres в реальном времени. Речь идёт о данных, на основании которых работает сам сервис: подтверждение оплаты нужно для обработки заказа, а сведения о подписке — для обновления клиентского аккаунта и доступа к платным возможностям. Ранее компании часто самостоятельно опрашивали API или строили приём событий webhooks и поддерживали свою копию состояния. Новый вариант переносит эту работу в Data Pipeline. Существующие направления для аналитических хранилищ остаются, но оперативная синхронизация на старте доступна именно для Postgres. Остальные направления реального времени перечислены как будущие, а не уже работающие.

Сначала история, затем изменения

Подключение начинается с выбора базы и нужных таблиц Stripe. Система переносит существующие записи, после чего поддерживает изменения; в анонсе перечислены платежи, клиенты, подписки и другие ресурсы. Среди совместимых размещений Postgres названы Supabase, AWS, Neon и Databricks Lakebase. Это выбор инфраструктуры для базы, а не отдельный формат каждого провайдера. Stripe также описывает регулярную сверку копии с источником и устранение расхождений. В отличие от одиночного уведомления о событии, синхронизированная таблица должна представлять текущее состояние ресурса. Так приложению проще читать связанные данные обычным запросом к своей базе, сохраняя контекст нескольких платежей или счетов.

Что действительно доступно для копирования

Документация ограничивает состав публичным API Stripe и ресурсами, которые поддерживают получение списка. Например, доступны customers, subscriptions, charges, payment intents и invoices. Объект Balance, который возвращается как один объект, не включается тем же способом. Пользователь управляет набором синхронизируемых таблиц через Dashboard. Поэтому выражение «все данные Stripe» требует уточнения: внутренние сведения платформы и ресурсы без нужного интерфейса не становятся доступными автоматически. Выбор таблиц также определяет, какие клиентские и платёжные сведения окажутся в собственной инфраструктуре компании. Копия предназначена для чтения приложением и не описана как универсальный двусторонний редактор исходного платёжного аккаунта.

Public preview и задержки отдельных операций

На запуске функция находится в public preview; Stripe предлагает бесплатный старт, а не обещает бессрочную бесплатность любого будущего объёма. Обычные изменения заявлены в пределах секунд, но справка содержит конкретные исключения. Обновления payment_intents, invoice_items и ряда других таблиц могут доходить до десяти минут; у checkout_sessions такая задержка относится к созданию, тогда как обновления идут в реальном времени. Во время пробной версии строка также может временно показывать прежнее состояние. Это существенная граница применения для доступа к платной функции сразу после оплаты. Постоянная копия удобна для рабочего состояния и связанных запросов, но слово real-time в названии не отменяет опубликованные исключения для конкретных операций.

Источники

Принципы журнала и исправления.

ERITKOM / НОВЫЙ ПРОЕКТ

Расскажите о задаче и оставьте контакты. Мы свяжемся с вами, чтобы обсудить проект.

  1. 01 Контакты
  2. 02 Ваша задача