Introducing agent and attribution
Stripe

Stripe

Point one Stripe webhook event at Finseo and every payment becomes an attribution conversion tied to ChatGPT, Perplexity, Claude, and other AI search sources.

Overview

What you get with the Stripe integration

Finseo connects to Stripe through a standard webhook endpoint. You add your Finseo webhook URL as a destination in Stripe Workbench and subscribe to exactly one event: checkout.session.completed for one-time payments and subscription starts, or invoice.paid if you bill via invoices. Finseo reads the amount, currency, and customer email, converts cent-based amounts, classifies $0 checkouts as trials and recurring invoices as renewals, and merges the payment with a "How did you hear about us?" answer via order reference or email. Revenue then shows per AI engine, including ChatGPT, Perplexity, Claude, and Gemini.

Use cases

What you can do with Stripe and Finseo

Real ways Stripe customers use Finseo to track and grow AI search revenue.

  1. 01

    SaaS trial-to-paid attribution

    Ask "How did you find us?" at signup with the user's email. When the first paid invoice arrives weeks later, Finseo merges it via email and attributes the revenue to the original AI source.

  2. 02

    One-time payment attribution

    Subscribe to checkout.session.completed and every Stripe Checkout purchase arrives with amount and currency. Pass client_reference_id to merge with the survey answer by your own order ID.

  3. 03

    Clean new-customer KPIs

    $0 trial checkouts are stored as trials and renewals are tagged by billing_reason, so only regular purchases count as new customers awaiting attribution.

  4. 04

    Multi-currency revenue

    Stripe sends amounts in minor units. Finseo converts them correctly, including zero-decimal currencies like JPY and KRW, so revenue per AI engine is accurate across markets.

  5. 05

    AEO investment decisions

    Compare Stripe revenue from ChatGPT, Perplexity, and Google AI Overviews with paid channels. Fund Answer Engine Optimization (AEO) based on paid customers, not traffic.

Why it matters

Why Stripe customers need AI visibility tracking

Stripe processes payments for millions of businesses, and for SaaS companies it is usually the only system that knows who actually paid. AI search traffic from ChatGPT and Perplexity frequently lands as direct in analytics, and a 14 or 30-day trial breaks most attribution windows before a dollar is collected. Because Finseo merges on email and order reference within 90 days, the signup answer and the first real invoice connect automatically, showing which AI engines produce paying customers rather than just visits.

Comparison

Stripe alone vs Stripe with Finseo

How using Stripe on its own compares to pairing it with Finseo for AI visibility and attribution.

Payment tracking

Stripe alone

Stripe dashboard only

With Finseo

Every payment as an attribution conversion

Trial handling

Stripe alone

Trials counted as revenue or lost

With Finseo

$0 checkouts stored as trials

Renewals

Stripe alone

Inflate new-customer numbers

With Finseo

Tagged by billing_reason, excluded from KPIs

Merge with survey

Stripe alone

Manual CSV matching

With Finseo

Automatic via order ID or email, 90 days

AI revenue

Stripe alone

Unknown

With Finseo

Revenue per ChatGPT, Perplexity, Claude

How to connect

How to connect Stripe to Finseo

A few steps to wire up your Stripe account with Finseo. No code required.

  1. 01

    Get your Finseo webhook URL

    In Finseo, open Attribution, then Set up attribution, and pick SaaS / Stripe. Copy the webhook URL including the token query parameter.

  2. 02

    Add a webhook destination in Stripe

    In Stripe, go to Workbench, then Webhooks, then Add destination, and choose Webhook endpoint (older accounts: Developers, then Webhooks). Paste the Finseo URL.

  3. 03

    Subscribe to one event

    Pick checkout.session.completed for one-time payments and subscription starts, or invoice.paid if you bill via invoices. Never both, or every subscription start is stored twice.

  4. 04

    Pass a merge key

    Set client_reference_id or metadata.order_id on Checkout Sessions, or simply pass the same customer email you collected at signup.

  5. 05

    Save and test

    Save the destination and run a test payment. Check the Attribution dashboard, and look at Attribution, then Webhook logs if Stripe reports failed deliveries.

FAQ

Frequently asked questions about Stripe

Answers to the most common questions about the Stripe integration.

Through a Stripe webhook endpoint. You add your Finseo project webhook URL as a destination in Stripe Workbench and subscribe to one payment event. Stripe POSTs the event JSON to Finseo, which reads amount, currency, and customer email and stores the payment as an attribution conversion.

Exactly one. Use checkout.session.completed for one-time payments and subscription starts, or invoice.paid if you bill via invoices. A subscription start fires both events, so subscribing to both would store the same payment twice and double-count revenue in the Attribution dashboard.

$0 checkouts, such as a free trial start or a 100 percent coupon, are stored as trials rather than purchases and excluded from revenue KPIs. When the first real invoice is paid, it arrives as a separate conversion and is attributed to the same customer via email.

No. Recurring invoices with any billing_reason other than subscription_create are stored as renewals. Only regular purchases count as new customers awaiting attribution, so monthly or yearly renewals never inflate new-customer counts or distort the revenue per AI engine shown in Finseo.

Finseo prefers your own order reference as the transaction ID, using client_reference_id or metadata.order_id if set, otherwise the Stripe object ID such as cs_ or in_. The customer email is hashed at ingestion and used as a merge key within a 90-day window.

Yes, this is the main use case. Run the Finseo survey at signup or onboarding, collect the email, and pass the same email to Stripe Checkout. The trial-to-paid conversion attributes automatically weeks later, even after a 30-day trial, to ChatGPT, Perplexity, or whichever engine the user named.

The token query parameter in the webhook URL is missing or outdated. Copy the full webhook URL from Finseo again. If the token was regenerated in your Attribution settings, old URLs stop working immediately and Stripe will report 403 on every delivery attempt.

All Stripe currencies. Amounts arrive in minor units such as cents and are converted correctly, including zero-decimal currencies like JPY and KRW where the amount is already the full unit. Currency is stored alongside the value so the dashboard shows revenue per AI engine accurately.

Talk to our team

Connect Stripe and dominate AI search

Join hundreds of brands using Finseo to track and improve their visibility in ChatGPT, Perplexity, Claude, Gemini, and Google AI Overviews.