Эта функция доступна только на тарифных планах Business и выше .
Лучшая в своём классе интеграция Revroute со Stripe отслеживает события оплаты в Stripe и фиксирует их как продажи в Revroute.

Вот события, которые Revroute отслеживает:
- Периодические подписки
- Разовые платежи
- Бесплатные пробные периоды
- Возвраты (для аннулирования комиссий партнёров)
- Отмены/отток
- Расширение использования
В этом руководстве мы узнаем, как установить и настроить интеграцию Revroute со Stripe для отслеживания событий конверсий продаж.
Установка интеграции Revroute со Stripe
Найдите Revroute на маркетплейсе приложений Stripe
Перейдите к интеграции Revroute со Stripe на маркетплейсе приложений Stripe.

Установите приложение Stripe
В правом верхнем углу нажмите Install app, чтобы установить приложение Revroute в вашем аккаунте Stripe.

Также вы можете сначала установить приложение Stripe в песочнице Stripe , чтобы протестировать весь процесс без использования реальных денег.
После установки приложения нажмите Continue to app settings, чтобы завершить установку.

Подключите Stripe к рабочему пространству Revroute
На странице настроек приложения нажмите Connect workspace, чтобы подключить ваш аккаунт Stripe к рабочему пространству Revroute.

Вы будете перенаправлены на поток OAuth Revroute, где сможете выбрать рабочее пространство Revroute для подключения к аккаунту Stripe.

После нажатия Authorize вы будете перенаправлены обратно на страницу настроек приложения Revroute в Stripe, где увидите, что интеграция установлена.

После установки интеграции Revroute будет автоматически отслеживать следующие события в Stripe и фиксировать их как продажи в Revroute:
customer.created: при создании нового клиентаcustomer.updated: при обновлении данных клиентаcheckout.session.completed: когда клиент завершает сессию оформления заказаinvoice.paid: при оплате счёта (для отслеживания периодических подписок)charge.refunded: при возврате платежа (для аннулирования комиссий партнёров)
Отслеживание продаж через интеграцию Revroute со Stripe
В зависимости от вашей настройки, существует несколько способов отслеживания продаж через интеграцию Revroute со Stripe.
- Вариант 1: Использование Stripe Payment Links
- Вариант 2: Использование Stripe Checkout (рекомендуется)
- Вариант 3: Использование Stripe Customers
Вариант 1: Использование Stripe Payment Links
Для работы этого варианта необходимо установить интеграцию Revroute со Stripe и включить отслеживание конверсий для ваших ссылок.
При использовании Stripe Payment Links события лидов и продаж отслеживаются, но вебхуки лидов и вознаграждения за лидов генерироваться не будут.
Если вы используете Stripe Payment Links , просто добавьте параметр запроса ?dub_client_reference_id=1 к вашей ссылке Stripe Payment Link при сокращении её в Revroute.
Затем, когда пользователь кликнет по сокращённой ссылке, Revroute автоматически добавит уникальный идентификатор клика как параметр запроса client_reference_id к платёжной ссылке.

Наконец, когда пользователь завершит оформление заказа, Revroute автоматически отследит событие продажи и обновит customerExternalId клиента его идентификатором клиента Stripe для дальнейшего использования.
Если у вас есть маркетинговый сайт, на который вы сначала перенаправляете пользователей, вы можете сделать следующее:
-
Установите скрипт Revroute Analytics, который автоматически обнаруживает
dub_idв URL и сохраняет его как first-party cookie на вашем сайте. -
Затем получите и добавьте значение
dub_idкак параметрclient_reference_idк платёжным ссылкам на вашей странице тарифов / кнопке CTA (с префиксомdub_id_).https://buy.stripe.com/xxxxxx?client_reference_id=dub_id_xxxxxxxxxxxxxx
Вариант 2: Использование Stripe Checkout (рекомендуется)
Если у вас есть собственный поток оформления заказа, использующий API checkout.sessions.create Stripe, вам нужно связать объект клиента Stripe с уникальным идентификатором пользователя в вашей базе данных (который мы отследили на шаге отслеживания конверсий лидов).
Это позволит Revroute автоматически отслеживать события покупок из Stripe и связывать их с исходным событием клика (и, соответственно, со ссылкой, по которой пришёл пользователь).
Сначала выполните следующие предварительные требования:
- Установите интеграцию Revroute со Stripe
- Установите скрипт Revroute Analytics
- Установите серверный SDK Revroute
Затем при создании сессии оформления заказа передайте уникальный ID пользователя в вашей базе данных как значение dubCustomerExternalId в поле metadata.
import { stripe } from "@/lib/stripe";
const user = {
id: "user_123",
email: "user@example.com",
teamId: "team_xxxxxxxxx",
};
const priceId = "price_xxxxxxxxx";
const stripeSession = await stripe.checkout.sessions.create({
customer_email: user.email,
success_url: "https://app.domain.com/success",
line_items: [{ price: priceId, quantity: 1 }],
mode: "subscription",
client_reference_id: user.teamId,
metadata: {
dubCustomerExternalId: user.id, // the unique user ID of the customer in your database
},
});Таким образом, когда клиент завершит сессию оформления заказа, Revroute автоматически свяжет детали сессии (сумму счёта, валюту и т.д.) с клиентом — и, соответственно, с исходным событием клика.
Если вы используете гостевое оформление (например, с mode: "payment"), поле customer в событии вебхука checkout.session.completed будет null, и продажи не будут отслеживаться в Revroute.
Чтобы исправить это, установите customer_creation в always при создании сессии оформления заказа :
const stripeSession = await stripe.checkout.sessions.create({
// ... other options
customer_creation: "always", // ensures a Stripe customer is created
});Вариант 3: Использование Stripe Customers
Если вы не используете поток создания сессии оформления заказа Stripe, вы также можете передать ID пользователя и идентификатор события клика (dub_id) в потоке создания клиента Stripe .
Сначала выполните следующие предварительные требования:
- Установите интеграцию Revroute со Stripe
- Включите отслеживание конверсий для ваших ссылок
- Установите скрипт Revroute Analytics
Затем при создании клиента Stripe передайте уникальный ID пользователя в вашей базе данных как значение dubCustomerExternalId в поле metadata.
import { stripe } from "@/lib/stripe";
const user = {
id: "user_123",
email: "user@example.com",
teamId: "team_xxxxxxxxx",
};
const dub_id = req.headers.get("dub_id");
await stripe.customers.create({
email: user.email,
name: user.name,
metadata: {
dubCustomerExternalId: user.id,
dubClickId: dub_id,
},
});Также вы можете передать значения dubCustomerExternalId и dubClickId в поле metadata при обновлении клиента Stripe :
import { stripe } from "@/lib/stripe";
const user = {
id: "user_123",
email: "user@example.com",
teamId: "team_xxxxxxxxx",
};
const dub_id = req.headers.get("dub_id");
await stripe.customers.update(user.id, {
metadata: {
dubCustomerExternalId: user.id,
dubClickId: dub_id,
},
});Таким образом, когда клиент совершает покупку, Revroute автоматически свяжет детали покупки (сумму счёта, валюту и т.д.) с исходным событием клика.
При использовании Stripe Customers события лидов и продаж отслеживаются, но вознаграждения за лидов генерироваться не будут.
Отслеживание бесплатных пробных периодов
Revroute поддерживает отслеживание бесплатных пробных периодов подписок как событий лидов в Revroute. Это полезно для продуктов с бесплатными пробными периодами, поскольку вы можете захотеть отслеживать активации пробных периодов в рамках потока атрибуции.
Чтобы включить отслеживание бесплатных пробных периодов, перейдите в настройки интеграции Stripe и включите опцию Track Free Trials:

Опционально вы также можете настроить интеграцию для отслеживания предоставленного количества в подписке как отдельных событий лидов.
Это полезно, если у вас есть вознаграждение за лидов в вашей партнёрской программе и вы хотите вознаграждать партнёров за каждую единицу подписки, которую приобретают их клиенты (например, $50 за лида/предоставленное место).
Чтобы различать вручную отслеживаемые события лидов и события лидов бесплатного пробного периода для типов вознаграждений за лидов, используйте условие вознаграждения Customer Source для фильтрации событий free trial:

Поддержка конвертации валют
Если вы используете функцию Stripe Adaptive Pricing , Revroute будет записывать сумму продажи в валюте вашего аккаунта Stripe:
// Stripe checkout.session.completed event payload
{
"id": "{{EVENT_ID}}",
"object": "event",
"type": "checkout.session.completed",
"data": {
"object": {
"id": "{{SESSION_ID}}",
"object": "checkout.session",
"currency": "cad",
"amount_subtotal": 2055,
"amount_total": 2055,
"currency_conversion": {
"amount_subtotal": 1500,
"amount_total": 1500, // this is the amount that Revroute will record
"source_currency": "usd", // the currency of your Stripe account
"fx_rate": "1.37"
}
}
}
}Если вы не используете Stripe Adaptive Pricing, Revroute будет записывать сумму продажи в валюте по умолчанию вашего рабочего пространства Revroute. Это означает, что если вы передаёте другую валюту, она будет автоматически конвертирована в USD для единообразия отчётности — по актуальным курсам обмена.
// Stripe checkout.session.completed event payload
{
"id": "{{EVENT_ID}}",
"object": "event",
"type": "checkout.session.completed",
"data": {
"object": {
"id": "{{SESSION_ID}}",
"object": "checkout.session",
"currency": "cad",
"amount_subtotal": 2055,
"amount_total": 2055 // this will be converted from CAD to USD
}
}
}Валюта по умолчанию для всех рабочих пространств Revroute в настоящее время установлена как USD.
В будущем мы добавим возможность настройки этого параметра.
Обработка налогов
При отслеживании конверсий продаж из Stripe Revroute автоматически исключает налоги из итоговой суммы продажи для обеспечения точной отчётности по доходам.
Для сессий оформления заказа Revroute вычисляет сумму продажи, вычитая сумму налога из общей суммы:
// Sale amount calculation for checkout sessions
saleAmount = amount_total - total_details.amount_tax;Для счетов Revroute использует поле total_excluding_tax, если оно доступно:
// Sale amount calculation for invoices
saleAmount = total_excluding_tax ?? amount_paid;Это гарантирует, что суммы продаж, записанные в Revroute, отражают фактический доход до вычета налогов, обеспечивая более точные метрики для:
- Отслеживания и отчётности по доходам
- Расчёта комиссий партнёров
- Аналитики и метрик конверсий
Суммы налогов автоматически исключаются из всех событий продаж, отслеживаемых через интеграцию со Stripe, включая разовые покупки, подписки и периодические счета.
Просмотр результатов конверсий
Вот и всё — настройка завершена! Теперь вы можете наблюдать за ростом дохода от конверсий. Мы предоставляем 3 различных представления для анализа ваших конверсий: