Skip to main content

Stripe integration: review requests after every payment

Connect Stripe with a read-only restricted key to ask every paying customer for a review after their payment.

A
Written by Axel Lavergne

When a customer's payment goes through in Stripe, Reviewflowz sends them a review request after the delay you choose. Every review that comes back is matched to the customer you asked. See the Stripe integration.

How it works

  1. A customer pays you, and Stripe marks the payment as paid.

  2. Within about an hour, they become a contact in Reviewflowz with their name, email and phone from Stripe.

  3. Your request goes out after your delay.

  4. Their review is matched back to them on your Requests page.

What triggers a request

Stripe event

When it fires

What comes across

A payment is paid, with nothing refunded

Within about an hour: we read new payments from Stripe every hour

The customer's name, email and phone, plus the amount and currency if you map them

Every paid payment counts: there's no filter by product, price or customer. A pending payment, such as a bank debit, is checked every hour and asked about once it's paid, if that's within 7 days. A payment that's refunded, voided or cancelled when we read it is skipped, even if only partly refunded.

If you refund a payment after the customer joined but before their first message goes out, none of their unsent messages is sent, unless they made another payment since they joined that still stands.

When you first save, we import 90 days of paid payments to match reviews you already have. None of those customers is asked.

Connect Stripe

In Stripe, open the Developers Dashboard and go to API keys (dashboard.stripe.com/apikeys), in live mode. You need Administrator permissions. Click Create restricted key and name it "Reviewflowz" in Key name. Set Charges, PaymentIntents and Customers to Read and leave everything else on None. Click Create key, complete Stripe's verification and copy the key straight away, because Stripe shows it once. The key is read-only: Reviewflowz can see your payments and customers, nothing else, and can't change anything in Stripe.

In Reviewflowz, open Integrations, go to Automate review requests > Connect another integration and search for Stripe. Click the card, paste your restricted key into the Stripe Secret Key field and connect.

Stripe card in the Reviewflowz integrations directory

Choose where customers go

You land on Configure Stripe integration. Map fields matches Email, First Name, Last Name and Phone for you. Map Amount and Currency too if you want them on the contact, or pick + New attribute to create one. Name your list sets the list every paying customer is also kept in.

Mapping Stripe customer fields to contact attributes in Reviewflowz

Under After every payment:

  • Send to. With two or more requests, pick the one Stripe customers join. With one, they join it. With none, saving creates "Stripe review requests", switched off until you turn it on.

  • Location (accounts billed per location). With several locations, pick the one requests come from. With one, it's set for you. If your account has no locations, requests use your account's own review links.

Click Save and connect. The source then shows on your integrations page as Active, with Ongoing sync, its contact count and when it Last synced. If you connected but never saved, it shows Setup not finished: click Finish setup.

The After every payment settings for the Stripe payment source in Reviewflowz

Stripe payment source, active, on the Reviewflowz integrations page

Set up the request

  • Timing. Larkspur Clay Studio emails a day after someone pays for a class, then sends "A quick favour, {{first_name}}?" 3 days later. Choose as soon as possible, 1 hour, 3 hours, or 1, 2, 3 or 7 days, with up to 3 messages. Anyone who clicks, reviews or unsubscribes isn't messaged again.

  • Channel. Email is the safe choice: Stripe only collects a phone number at checkout if you ask for it. A customer without the detail your channel needs is skipped.

  • Message. Larkspur's From name is "Larkspur Clay Studio" and its Subject is "How was your class, {{first_name}}?", which Kai Marsh reads as "How was your class, Kai?". The Button text says "Review us on Google". Use Send myself a test to see it in your inbox.

  • Direct reviews to. Smart routing shows one button and picks the site per customer for your goal, here as many Google reviews as possible. Show all options on the email puts every site on its own button, on email only.

Email editor for the review request sent after a Stripe payment

Follow-up reminder email editor

Review routing options for Stripe review requests

Review request email a customer receives after paying

Turn it on

Click Turn requests on. Only payments made after you click Save and connect can get a request, and only while requests are on. A payment that comes in while they're off is never asked about later, and neither is one we first read more than 7 days after it was made.

Requests page listing customers who paid through Stripe

See what it brings back

The Requests page shows Contacts, Requests, Clicked CTA, Matched and Stopped. Click Matched to see every customer whose review came back.

Requests page filtered to customers whose review was matched

Good to know

  • A payment with a name but no email or phone can't be asked, but it's kept so a review from that person can be matched.

  • Pause stops reading Stripe, and payments made while paused never get a request. Disconnect stops syncing and keeps your contacts.

  • If the key is revoked, rotated or missing a permission, the source card says "Stripe refused our access: the key may have been revoked or changed." The Requests page shows "Stripe needs attention" while the source can't send.

  • To change the key, Disconnect the Stripe source and connect Stripe again with the new key. Stripe keeps a rolled key working for up to 7 days, so reconnect within that window, and do it in one go: payments made between Disconnect and your new Save and connect never get a request.

  • Each Stripe connection feeds one request.

  • Nothing is written back to Stripe.

Related

Did this answer your question?