Send invites automatically from Lemon Squeezy
Connect your Lemon Squeezy store to Smart Invites so each new order sends that customer a testimonial request by email.
When someone buys from your Lemon Squeezy store, Lemon Squeezy can tell ReTestimonial, and Smart Invites then emails that customer a request for a testimonial. You create a webhook in ReTestimonial, then add its URL to a webhook in Lemon Squeezy. Smart Invites are on Premium and Business.
Create the webhook in ReTestimonial
Follow Send invites automatically with a webhook and pick Lemon Squeezy under Where do your customers buy?. The fields come filled in for Lemon Squeezy's order_created event:
| Field | Filled in with |
|---|---|
| Email path | data.attributes.user_email |
| Name path | data.attributes.user_name, the customer's full name |
| Company path | Empty: Lemon Squeezy orders don't include a company name |
| Only invite when (optional) | meta.event_name equals order_created |
Choose the form, the emails and the timing, then click Create webhook. On the next page, click Copy next to Your webhook URL, and keep the page open.
Add the webhook in Lemon Squeezy
In your Lemon Squeezy dashboard, open Settings > Webhooks and add a webhook. Lemon Squeezy's webhooks guide shows each field.
- Paste your webhook URL as the Callback URL.
- Type a Signing secret of your own, between 6 and 40 characters, and keep a copy of it.
- In the list of events, select
order_created. - Save the webhook.
Paste the same signing secret
Back in ReTestimonial, paste the secret into Lemon Squeezy signing secret (recommended) and click Save. It must match the one in Lemon Squeezy exactly. The field then reads Signature verification is on — unsigned events are rejected. A saved secret can't be viewed again; to change it, click Replace secret on the webhook's Setup tab.
Wait for the first order
The page shows Listening for the first event… until Lemon Squeezy sends an order, then Event received — it works once a customer is invited. To check it before a real customer buys, see Test mode.
Test mode
Lemon Squeezy keeps test-mode and live-mode webhooks apart: a test-mode webhook fires only for test orders, and a live one only for real orders (Lemon Squeezy's guide). Add the URL in live mode for your real customers. If you add it in test mode too, give both Lemon Squeezy webhooks the same signing secret, because a ReTestimonial webhook checks only one.
In test mode you can place a test order, or have Lemon Squeezy simulate order_created for an existing test order.
ReTestimonial recognizes a test-mode order: the event shows up as skipped, with the reason "A test event from the platform, so nobody was invited and no invite was used". Nobody is emailed, so a test order checks the connection. Only live orders invite their customers.
To check the paths without inviting anyone, use the webhook's Test tab instead. Lemon Squeezy's webhooks page shows the full payload of each recent request: copy one into Event payload and click Run test. Nothing is saved and no email is sent. See Test a Smart Invites webhook.
Subscriptions
Lemon Squeezy sends order_created for a subscription's first payment too, but not for its renewals (event types). So with the default setup, each new subscriber is invited once.
If your store sells only subscriptions, you can select subscription_created in Lemon Squeezy instead. Then click Settings on the webhook's page, change the filter's Value to subscription_created and click Save changes. The email and name paths stay the same.
Skipped and failed Lemon Squeezy events
- Other events are skipped. Any event other than the one in your filter, such as
order_refundedor a subscription event you also selected, shows as Skipped with "Didn't match your “only invite when” filter". If you select bothorder_createdandsubscription_created, a new subscriber is still invited only once. - A refund doesn't stop the emails. The customer was invited when the order came in. To stop the rest of their emails, open the webhook's campaign on the Campaigns tab and choose Cancel remaining emails on their row. See Track invite campaigns.
- Repeat buyers are skipped if they were invited in this project within the webhook's Re-invite cooldown (days), so a customer who orders again soon isn't asked twice.
- Signature failures. When the secrets don't match, the event shows as Failed with "The signature didn't match". Set the same secret in Lemon Squeezy and with Replace secret on the Setup tab. Lemon Squeezy retries a rejected request up to three more times, so one order can show as several failed events.
Related articles
Was this page helpful?
Send invites automatically from Gumroad
Connect Gumroad's Ping to a Smart Invites webhook so buyers are invited to leave a testimonial after a sale, and test it safely.
Send invites automatically from Paddle
Connect Paddle Billing to Smart Invites so new Paddle customers get an email asking them for a testimonial.