Postscript integrates with Repeat, allowing you to share information between the two solutions.
Repeat empowers shops to create personalized reordering experiences for their customers using email, SMS, and QR codes. Repeat watches each customer's purchase history and predicts the right moment to reach out, whether that's a replenishment reminder, a cross-sell, a subscription nudge, or a win-back.
With our Repeat integration, you can:
Send personalized, timely reordering reminders to customers based on their past purchases.
Reach out to customers via SMS with a link that streamlines their reordering process.
In this article, we'll walk you through how to connect the integration, build an automation, and use the Repeat events, merge tags, and message templates available to you.
Step 1: Connect Your Postscript Account to Repeat
Select your Shop Name in the side menu of your Postscript dashboard, then select API.
Select Create Security Key Pair on the right side of the page, then confirm your action by selecting Yes.
Select Show in the Private Key column to reveal your API key.
Add the key in your Repeat app to enable the integration on your store
Step 2: Build a Repeat-Specific Automation
From the Postscript dashboard, select Messaging, then select Automations.
In the upper-right corner, select Create Automation, then choose Create Automation Flow.
Choose an automation flow template or build your own. To start building, select the Continue/Create Flow button.
Within the Automation properties card, select the dropdown menu below Trigger event or property.
Select the Repeat event you want (for example, Repeat - DueToReplenish or Repeat - LateDueToReplenish). See the reference table below for all six events.
Add subscriber, entry, or trigger filters as needed.
Drag and drop the Send Message action from the toolbar on the left. Select the overlapping tag icons to insert Repeat data as merge tags from the Trigger Event Properties group, such as Repeat Cart URL or Repeat Subscription Cart URL.
Once your flow is built, select Save Changes in the upper-right corner. When you're ready, activate the flow immediately or schedule it for a specific date and time using the Schedule or Activate button.
Recommended: add a cancellation trigger
On the replenishment moments (DueToReplenish and LateDueToReplenish), add Order Created as a cancellation trigger. This stops the remaining messages in the flow once the customer reorders, so nobody gets asked to restock something they just bought.
This is worth doing on Cross Sell, Subscription Upsell, and Sample Upsell too.
The Six Repeat Events
Each Repeat event fires at a specific moment in the customer's lifecycle, timed from their own purchase behavior.
Moment | Event type | When it fires |
Replenishment |
| The customer is approaching the point where they would typically run out of a product they bought. Timed per product variant, just shy of the median reorder interval. |
Late Replenishment |
| The customer has passed their normal reorder window without repurchasing. Fires around the 75th percentile of that variant's reorder curve. |
Cross Sell |
| A one-time buyer is at the point where a second purchase is most likely, around the 25th percentile of the store's first-to-second order timing. Carries a predicted next product. (Formerly known as DueFor2ndOrderCrossSell.) |
Subscription Upsell |
| The customer has bought the same subscribable product two or more times at a cadence that looks like subscriber behavior, and is not already an active subscriber. |
Sample Upsell |
| The customer bought a sample or trial size and is ready to be moved to the full-size product. Limited availability. |
Lapsed Customer Prevention |
| The customer is overdue relative to their own expected reorder behavior and is at risk of churning entirely. |
Merge Tags Available in Each Event
Repeat sends each event with a set of properties. In the Postscript message editor these appear under Trigger Event Properties, labelled in title case rather than by the raw payload name, so repeat_cart_url shows up as "Repeat Cart URL."
Use the merge tag label when building your message. The payload property is listed alongside it for reference if you ever need to debug a specific event with the Repeat team.
Note: First Name and Shop Link in the templates further down are Postscript's own merge tags, not Repeat event properties.
Sent with every event
Merge tag | Payload property | What it is |
Repeat Cart URL |
| The customer's personalized Repeat Cart, prefilled with their predicted products. This is the primary CTA for most flows. |
Repeat Subscription Cart URL |
| The same personalized cart with the subscription option preselected. Use this in subscription-focused messaging. |
DueToReplenish and LateDueToReplenish
Both events carry the same set, describing the product the customer is due to reorder.
Merge tag | Payload property |
Reorderable Product Title |
|
Reorderable Product Id |
|
Reorderable Product Img |
|
Reorderable Variant Title |
|
Reorderable Variant Id |
|
Reorderable Variant Price |
|
Reorderable Pdp URL |
|
PrimedForCrossSell
Describes the product Repeat predicts the customer is most likely to buy next.
Merge tag | Payload property |
Prediction Product Title |
|
Prediction Product Id |
|
Prediction Product Img |
|
Prediction Variant Title |
|
Prediction Variant Id |
|
Prediction Variant Price |
|
Prediction Pdp URL |
|
PrimedForSubscription
Describes the product the customer qualified on.
Merge tag | Payload property |
Upsell Product Title |
|
Upsell Product Id |
|
Upsell Product Img |
|
Upsell Variant Title |
|
Upsell Variant Id |
|
Upsell Variant Price |
|
Upsell Pdp URL |
|
ReadyForSampleUpsell
Carries both the sample the customer bought and the full-size product to upsell them into.
Merge tag | Payload property |
Sample Product Title |
|
Sample Variant Title |
|
Full Size Product Title |
|
Full Size Product Id |
|
Full Size Variant Title |
|
Full Size Variant Id |
|
Full Size Variant Price |
|
Full Size Pdp URL |
|
LapsedCustomer
No product-level properties. This event carries only Repeat Cart URL and Repeat Subscription Cart URL.
For a "we miss you" message, pair the cart URL with a discount code configured in Postscript, or link to a collection or shop-all page. Repeat does not pass a shop-all link, so use Postscript's own Shop Link merge tag or your own URL.
Recommended Message Templates
Merge tags are written below with the label you'll see in the editor. Insert them from the Trigger Event Properties group rather than typing them by hand. Discount codes shown as [CODE] need to be configured in Postscript first.
Replenishment (DueToReplenish)
Recommended cadence: 3 messages, 5 days apart.
Hey First Name, running low? Reorder your favorite products from your personalized cart: Repeat Cart URL
Hi First Name again! Easily reorder with just a few clicks from your personalized cart: Repeat Cart URL
Hi First Name again! Ready to restock? We've saved your favorites here: Repeat Cart URL
Late Replenishment (LateDueToReplenish)
Recommended cadence: 3 messages, 5 days apart. Because this fires later than standard replenishment, the same copy generally works.
Hey First Name! Notice you're running low? Reorder now from your personalized cart: Repeat Cart URL Don't run out of your favorite products, we've got you covered!
Hi again, First Name! We noticed you haven't reordered. Running low? Easily reorder now: Repeat Cart URL
Hi First Name again! Ready to restock? We've saved your favorites here: Repeat Cart URL
Cross Sell (PrimedForCrossSell)
Recommended cadence: 3 messages, 5 days apart.
Hey First Name, based on the products you've tried, we think you might like Prediction Product Title. Check it out: Prediction Pdp URL
Hey First Name, ready to try something new? How about Prediction Product Title? Learn more: Prediction Pdp URL
Hey First Name, now's the time to try Prediction Product Title with 10% off! Use code: [CODE] Come check it out: Prediction Pdp URL
Subscription Upsell (PrimedForSubscription)
Recommended cadence: 3 messages, 7 days apart. Use the subscription cart URL here so the subscription option is preselected when the customer lands.
First Name, are you loving Upsell Product Title? Make future orders easy by subscribing today, plus X% off: Repeat Subscription Cart URL
Hey First Name, running low on Upsell Product Title? Never run out again, subscribe for X% off: Repeat Subscription Cart URL
Hi First Name, ready for another Upsell Product Title? Subscribe today to get X% off on future orders: Repeat Subscription Cart URL
Sample Upsell (ReadyForSampleUpsell)
Recommended cadence: 3 messages, 7 days apart.
First Name, are you loving Sample Product Title? Try the full size using the link below: Repeat Cart URL
Hey First Name, looks like you tried our Sample Product Title. Never run out again, subscribe for X% off: Repeat Subscription Cart URL
Hi First Name, ready for more of the Sample Product Title? Subscribe today to get X% off on future orders: Repeat Subscription Cart URL
Lapsed Customer Prevention (LapsedCustomer)
Recommended cadence: 3 messages, 7 days apart. Shop Link below is Postscript's own merge tag or a URL you add yourself, not a Repeat event property.
Hey First Name, long time no see! Use code [CODE] for 10% off your next order and keep enjoying the quality you love: Shop Link
Hi First Name! We haven't seen you in a while. Enjoy 10% off using code [CODE]: Shop Link
Hi First Name! Last chance for 10% off using code [CODE]. Stock up on some of everyone's favorites: Shop Link
Get Support
Have questions? Please feel free to reach out to our wonderful Support team at [email protected] or via live chat.
Need ongoing channel strategy guidance? Please fill out this form and we'll connect you to one of our certified partners.


