Stripe + Klaviyo integration

Combine Stripe + Klaviyo and move payment data into Klaviyo, or email and SMS data into Stripe. Just ask Letaido's AI agent and watch it do the work.

Best Stripe and Klaviyo integration jobs to start with

Use this Stripe Klaviyo integration for subscription status, failed invoices, win-backs, renewal reminders and consent.

When a subscription changes

Stripe plan and status on Klaviyo profiles

When a Stripe subscription starts, changes or ends, the agent writes the plan and status on the customer's Klaviyo profile for segments and flows.

When an invoice payment fails

Failed Stripe invoice payments start a Klaviyo flow

When a Stripe invoice payment fails, the agent records a Payment Failed event in Klaviyo with the amount and invoice link for your flow.

When a subscription ends

Canceled Stripe subscriptions start a Klaviyo win-back

When a Stripe subscription ends, the agent records a Subscription Canceled event in Klaviyo with the plan and reason, so your win-back flow starts.

Every morning at 8am

Stripe renewal reminders in Klaviyo

Every morning, the agent finds yearly Stripe plans renewing in 7 days and records a Klaviyo event with the expected amount for your reminder flow.

When a customer is created

Klaviyo activity on new Stripe customers

When a Stripe customer is created, the agent saves their Klaviyo email and SMS consent and last clicked email on the Stripe customer.

Stripe Klaviyo integration options, compared

Klaviyo's Stripe app records charges and invoices. Leta adds subscription jobs you describe.

OptionPayment events in KlaviyoSubscription plan and statusRuns unattendedYour own logicKlaviyo data back in Stripe
Letaido AI agentYesYesYesYesYes
Klaviyo's Stripe appYesNoYesNoNo
ZapierYesYesYesYesYes
Your own webhook codeYesYesYesYesYes
Read the full comparison
OptionDirectionWhat starts itBest forWatch out for
Letaido AI agentBilling details land on Klaviyo profiles and as metrics; consent and the last clicked email go onto Stripe customersSubscription changes, failed invoices or new customers in Stripe, a daily time, or you typing itSegments on plan and status, win-back and dunning flows, renewal reminders, consent visible to billingPast payments aren't imported. Event jobs need Stripe's webhook endpoint plus its signing secret pasted in Letaido
Klaviyo's Stripe appStripe into KlaviyoStripe charge and invoice events, sent to a webhook endpoint you create in StripeFailed Payment, Issued Invoice, Refunded Payment and Successfully Paid metrics for flows, plus up to 5 years of invoice and payment historyEvents need a valid email to sync. No subscription status or plan on profiles, and nothing goes back to Stripe
ZapierStripe to Klaviyo, or the reverseStripe triggers like New Subscription, Updated Subscription, Canceled Subscription and Failed Payment, fired on each changeZaps that create, update or subscribe a Klaviyo profile, add it to a list or create an eventYou set up and look after each Zap and the filter steps that hold your rules
Your own webhook codeEither way, as you code itStripe webhooks to a server you run, calling Klaviyo's APIAny event or field you need, such as disputes or custom propertiesA developer builds, hosts and fixes it, and handles signatures, retries and repeats

Stripe and Klaviyo: the old way vs. Letaido

  1. 1Export subscriptions from Stripe
  2. 2Match customers to Klaviyo profiles
  3. 3Import plan and status as a CSV
  4. 4Check the segments updated
  5. 5Repeat after every change
When a Stripe subscription is created, updated or canceled, find the customer's Klaviyo profile by email and set the custom properties 'Stripe plan' to the plan's product name, 'Stripe status' to the subscription status (Trialing, Active, Past due, Unpaid, Paused or Canceled) and 'Stripe status date' to the date of the change. If they have more than one subscription, use the live one. If they have no Klaviyo profile, create one without subscribing them. Only write when the plan or status changed.
Profile: Theo Brandt
Stripe status: Past due
Stripe status date: Oct 30, 2026

How Stripe and Klaviyo jobs start

When something happens

A job can start when a Stripe subscription changes or a Stripe invoice payment fails or a Stripe subscription ends or a Stripe customer is created, like “Stripe plan and status on Klaviyo profiles”.

On a schedule

Saved as an automation, like “Stripe renewal reminders in Klaviyo”: every morning at 8am.

When you ask

Ask in chat; Leta picks from 348 actions.

All 11 Stripe events · Klaviyo events Letaido can react to

How to set up the Stripe Klaviyo integration

  1. 1Paste a restricted Stripe key
  2. 2Paste a Klaviyo private API key
  3. 3Approve the first Klaviyo run

    Allow all read operations once per app; approve each kind of write once.

  4. 4Check the first result in chat
  5. 5Choose when it runs

Every Stripe and Klaviyo action the agent can take

Stripe
11 groups: 27 reads, 35 writes
  • Manage customer tax IDs
  • Manage invoices
  • Run Checkout Sessions
  • 8 more

List subscriptions · Create billing portal session · Find or create customer · Delete customer

Klaviyo
15 groups: 161 reads, 125 writes
  • Manage flows and automations
  • Manage the product catalog
  • Manage coupons and coupon codes
  • 12 more

Remove tag from flows · Query metric aggregates · Update source mapping · Delete object schema relationship

Frequently asked

Does Klaviyo integrate with Stripe? +

Yes. Klaviyo's own Stripe app sends payment and invoice events, such as Failed Payment and Successfully Paid, to Klaviyo. Letaido adds jobs it doesn't cover, such as keeping each customer's Stripe plan and status on their Klaviyo profile.

How do I connect Stripe and Klaviyo to Letaido? +

Add a restricted Stripe key and a Klaviyo private API key to Letaido, then tell Leta what you want. Jobs triggered by Stripe events also need Stripe's webhook endpoint set up, with the signing secret added to Letaido.

Is it possible to segment Klaviyo profiles by Stripe subscription status? +

Yes. When a Stripe subscription starts, changes or ends, Leta writes Stripe plan, Stripe status and Stripe status date on the customer's Klaviyo profile. Build segments and flow filters on those properties.

Can a Stripe cancellation start a Klaviyo win-back flow? +

Yes. When a subscription ends, Leta records a Subscription Canceled event with the plan, reason and any feedback. A flow you build in Klaviyo, triggered by that metric, sends the win-back emails.

Is there a way to send Klaviyo reminders before a Stripe renewal? +

Yes, for yearly plans. Every morning Leta finds plans that renew in 7 days with no cancellation scheduled, and records a Renewal Upcoming event with the plan, date and expected renewal amount from Stripe's invoice preview for your reminder flow.

Does it subscribe Stripe customers to my Klaviyo emails? +

No. Leta matches people by email. When someone has no Klaviyo profile, the new profile gets no marketing consent, and existing consent stays as it is.

Can I see Klaviyo consent in Stripe? +

Yes. For each new Stripe customer, Leta copies their Klaviyo email and SMS consent and the subject of the last email they clicked into the customer's metadata. Keys already there stay.

Will it ask before it changes Klaviyo or Stripe? +

Allow all read operations once per app; approve each kind of write once. Of the jobs on this page, only the new customer job changes Stripe, by adding metadata.

Put Stripe and Klaviyo to work today

Connect Stripe and Klaviyo, then ask for a job like "Keep each customer's Stripe plan and status on their Klaviyo profile". Leta gets it done the moment something happens, or the moment you ask.

Get Letaido