Title: Postlude
Author: redphoenixteamou
Published: <strong>September 25, 2026</strong>
Last modified: September 25, 2026

---

Search plugins

![](https://ps.w.org/postlude/assets/banner-772x250.png?rev=3712933)

![](https://ps.w.org/postlude/assets/icon-256x256.png?rev=3712933)

# Postlude

 By [redphoenixteamou](https://profiles.wordpress.org/redphoenixteamou/)

[Download](https://downloads.wordpress.org/plugin/postlude.0.1.1.zip)

 * [Details](https://wordpress.org/plugins/postlude/#description)
 * [Reviews](https://wordpress.org/plugins/postlude/#reviews)
 *  [Installation](https://wordpress.org/plugins/postlude/#installation)
 * [Development](https://wordpress.org/plugins/postlude/#developers)

 [Support](https://wordpress.org/support/plugin/postlude/)

## Description

Postlude — Review Recovery for WooCommerce.

A shopper who has just written “it arrived damaged” has told the store about a
 
problem and, usually, nobody has asked them about it. Postlude reads what the review
says against rules the store writes itself, and where a review describes a problem
one of those rules looks for, it shows that shopper a short note beside their review
offering to put them in touch with the store. The shopper writes a message; the 
store gets an email and a screen listing every request that came in.

Postlude ships no rules. Each rule is a short name, which only the store sees,
 
and a description of what the reviewer says, such as “The reviewer says the card
arrived creased or in worse condition than listed”. A store can hold up to 16 rules.
For each rule the store writes the offer the shopper sees, the button’s label, and
whether the button opens a request form (with the store’s own instructions at the
top of it) or goes to a web or email address. An offer is a remedy, never an incentive,
and it may never be conditional on removing, changing or withholding a review.

That is the whole of it. Postlude is a service-recovery tool, not a review
 tool.

#### What Postlude does not do

Postlude never edits, hides, filters, delays, intercepts or deletes a review,
 and
it never asks a shopper to change or withdraw one. The Frequently Asked Questions
below say exactly what it does write.

Nothing here promises anything about your ratings. What it offers is a way to
 hear
from an unhappy customer while there is still something you can do for them.

### External services

Postlude is an interface to an external service, and it cannot work without
 one.
This section describes that service in full.

#### Nothing is sent before you enable Postlude

Installing and activating the plugin contacts no external server at all. No
 registration,
no telemetry, no update check, no remote fonts or assets — the admin screens and
the storefront make no outbound request whatsoever while the plugin is installed
and not yet enabled.

The first request Postlude ever makes is the registration below, and it is made

by your own press of the “Accept the agreement and enable Postlude” button on the
Setup tab (WooCommerce  Postlude, which opens Setup until Postlude is switched on),
after you have read the disclosures printed above that button. Until you press it,
nothing about your store or your shoppers has left the site.

That tab asks for a business name and a contact email, and pressing the
 button 
records your acceptance of the Terms of Use published at https://postlude.red-phoenix.
team/terms and of the data processing agreement published at https://postlude.red-
phoenix.team/dpa, together with the version date of each. The record is kept in 
your own site’s database. Have those two details to hand before you enable, and 
read the agreement and the screen’s disclosures before you press it. When a new 
version of the agreement is published, the Setup tab asks you to accept it; your
earlier acceptance is kept.

#### Which service, and what it is for

Review text is sent to the Postlude analysis service at https://postlude.red-phoenix.
team.
 The service acts as a processor on your instructions. It reads the review
text and answers with which of the rules you have switched on the text matches, 
and how confident it is. It returns no prose. The only wording of yours that reaches
the underlying model is the description of each of your rules, sent with the review
text as the question that rule asks. The rule’s name is not sent to the model. There
is no other way to send the model a question, an instruction or a prompt through
this plugin.

The service is operated by Red Phoenix Team OÜ, the makers of this plugin.
 Behind
it, the text is scored by a third-party model vendor, typesafe.ai, in the United
States. The current list of sub-processors is the one in the data processing agreement
at https://postlude.red-phoenix.team/dpa.

#### Where the data is processed

Postlude processes the review text in the European Union, and passes it to the
 
model vendor that scores it, typesafe.ai, in the United States, which acts as a 
sub-processor. So the text leaves the EU. This is the same statement the Setup tab
makes inside your admin, and it is the statement to reconcile with your own privacy
policy and your own transfer arrangements.

#### What is sent, and when

Postlude makes five kinds of request, and no others.

**1. Registering your store — first when you press Enable.**
 Carries your store’s
domain, the business name and contact email you type into the enable form, a plan
field that always reads `starter` (the service, not the plugin, decides your plan),
the word `woocommerce` as the platform, your site’s language and the plugin’s version.
This is what lets the service issue your store a site key and prove the domain is
yours. It carries nothing about any shopper and no review text. The same request
is sent again on the two other buttons that need it: “Check verification again”,
which re-reads whether your domain has been verified, and “Replace the site key”,
which issues your store a new key and stops the old one working. It is also sent,
with your existing key, when you accept a new version of the agreement; that re-
reads the registration and issues no new key.

**2. Analysing one review — when a review is analysed.**
 Carries the review text,
scrubbed and truncated as described below; a reference to the review inside your
own store of the form `wp-comment-123`; the ids of the rules you have switched on;
and the product title where the review has a product. The request also has a language
field and a submitted-at field, and Postlude leaves both of them empty.

**3. Analysing your existing reviews in batches — beginning when you press Enable.**

The same per-review content as above, sent for several reviews at a time, over the
approved product reviews your store already had. This pass is started by the same
press of Enable that registers the store — it is not a separate decision you make
later — and it then works through your back catalogue in the background, over as
many requests as the backlog takes. It is the largest amount of review text Postlude
ever sends, so it is worth reading the two sections below before you enable.

That first pass sends only reviews Postlude has not analysed yet. Afterwards,
 the
History tab (WooCommerce  Postlude, then History) offers two ways to run it again.“
Analyse reviews not yet analysed” does the same: reviews already analysed are skipped,
are not charged again, and keep their verdicts. “Re-judge all reviews” sends every
approved review again, analysed or not, to be judged under the rules and match breadths
set now; the screen states how many reviews that is, and each review sent uses one
analysis from your store’s monthly allowance, including reviews already analysed.
A re-judge replaces the earlier verdicts, stops a rule you have since switched off
from tagging the review, and leaves a tag you marked as wrong marked. A re-judge
that stops and is started again begins from the first review and is charged again
for every review it sends. Because a re-judged review is stamped with the time it
was re-judged, the dashboard’s figures for a period count the reviews re-judged 
in it, including ones first analysed in an earlier period.

**4. Sending your rules — when you save them, and before analysing when needed.**

Carries the name and description of every rule you have written, switched on or 
off, and an internal id for each. It carries no offer text, button label, link address
or form instructions, nothing about any shopper and no review text. It is sent after
you save your rules whenever the set has changed since it was last sent, and again
before an analysis if the last send failed; while it fails, no review is analysed.
The service stores the names and descriptions for your store, deletes a rule when
a saved set leaves it out, and deletes all of them when your store’s registration
is deleted. When a review is analysed against a rule, the service sends that rule’s
description to the model vendor with the review text; the rule’s name is never sent
to the model vendor. Do not put personal data, such as a customer’s name, email 
address or order number, in a rule’s name or description.

After you edit a rule’s description, reviews it judged under the earlier
 wording
keep their verdicts and are marked on the reviews screen as judged under earlier
wording, with a link to “Re-judge all reviews”, which is charged as described above.
Renaming a rule marks nothing.

**5. Reporting a wrong tag — when you press “Wrong tag”.**
 Carries the rule the
tag belongs to and the model version that answered, and nothing about the review
or the reviewer.

#### What is never sent

No reviewer name, display name or author identifier. No reviewer email address.

No reviewer IP address. No WordPress user id, customer id or account identifier.
No order data of any kind — no order id, line items, SKUs, prices, totals, purchase
dates, shipping or billing details. No star rating or numeric evaluation of the 
review. The service rejects a request carrying any of these outright, by key name,
rather than accepting it and discarding the value.

The message a shopper types into the request form, together with the name and
 any
order reference they give, is **not** sent to the analysis service. It is stored
in your own WordPress database and emailed to you.

#### What is removed from the review text first, and what is not

Before the text is sent, Postlude tries to remove email addresses, phone
 numbers,
order numbers and IP addresses from it. This is best effort and it is not a guarantee.
The known gaps:

 * It cannot remove names. A review reading “I am Sam Shopper and my kettle broke”
   is sent with the name in it.
 * It cannot remove a user id, or an order number belonging to some other order.
 * It matches an order number introduced by English prose (“order number 100234”),
   written with a hash (“#100234”), or carrying a short letter prefix on a long 
   or multi-part number (“WC-100234”, “ORD-2024-001”), and it replaces any bare 
   run of seven or more digits. A number in none of those shapes stays — “Bestellnummer
   4821” is sent as written.
 * Some phone shapes are missed, “020 7123 4567” among them.
 * Anything the reviewer wrote that is not matched is sent exactly as they wrote
   it.

At most 1,000 characters of the scrubbed text are sent. That is a ceiling on
 what
leaves, not a window onto the start of the review: scrubbing runs first and shortens
the text as it replaces things, so wording past the shopper’s 1,000th character 
can still be inside what is sent.

The accurate summary is “only review text, with obvious identifiers removed”.
 It
is not “no personal data is transferred”, and Postlude does not claim that.

#### Usage counters

The service counts how many analyses your store has used against its allowance.

Those counters are held against a site key issued to your store, and the key resolves
back to your store, so they are pseudonymous rather than anonymous. They carry no
review text and no shopper details.

Analysis draws on one monthly allowance per store, set by the store’s plan:

 * Starter (free): 10 analyses a month.
 * Growth (€5 a month + VAT): 100 analyses a month.
 * Scale (€20 a month + VAT): 1,000 analyses a month.

Every store starts on Starter. The allowance is shown on the Setup tab
 (WooCommerce
Postlude, then Setup) and renews at 00:00 UTC on the 1st of each month.

New reviews, the pass over your existing reviews, every later run of it and
 every
re-judge all draw on that same allowance, so a history run can use the whole month’s
allowance.

When it is used up, Postlude stops analysing new reviews until the allowance
 renews,
and it stops quietly: a shopper is shown no offer and the review is stored with 
no analysis, so the reviews screen shows it as “Not analysed” rather than as a review
in which nothing was found. A history run that reaches it stops too, and the History
tab reports it as a completed run rather than an error; it does not resume by itself,
and you can run it again once the allowance renews on the 1st.

No review is changed either way.

#### Plans and payment

Prices are in euros and exclude VAT, which is added at checkout. Starter is free
and needs no payment. Growth (€5 a month)
 and Scale (€20 a month) are bought on
Stripe’s hosted payment page, through Stripe Managed Payments; Link, by Stripe, 
is the merchant of record for the sale.

The Setup tab shows a link to that page for each paid plan and, on a paid
 plan,
a “Manage subscription” link to Link. The service supplies these links in its registration
responses and the plugin stores them in the postlude_billing option. The upgrade
links are Stripe Payment Links (buy.stripe.com) carrying your store’s site id, so
the service knows which store paid. Showing them makes no request; only clicking
one takes your own browser to Stripe or Link. The plugin never contacts Stripe or
Link and never sends them anything about your store or your shoppers. Your payment
details go to Stripe, not to your store and not to Postlude. Stripe’s terms and 
privacy policy: https://stripe.com/legal, https://stripe.com/privacy. Link’s: https://
link.com/terms, https://link.com/privacy.

Stripe tells the Postlude service when a payment is confirmed, and the service
 
moves your store to the new plan. Your store learns of the change the next time 
it reads its registration from the service; the “Check plan status” button on the
Setup tab does that on demand.

Plans are sold under the Terms of Use at
 https://postlude.red-phoenix.team/terms.

#### The service’s terms and privacy policy

Terms of use: https://postlude.red-phoenix.team/terms
 Privacy policy: https://postlude.
red-phoenix.team/privacy Data processing agreement: https://postlude.red-phoenix.
team/dpa

#### What shoppers are told

The notice beside the request form reads: “The store may use an automated
 service
to read review text. Your name, email address and order details are not sent with
it, and email addresses, phone numbers and order numbers found in the text are removed
first; anything else you write in the review is sent as you wrote it.”

## Screenshots

[⌊Setup: what leaves your store and where it goes, the agreement, domain verification
and your plan.⌉⌊Setup: what leaves your store and where it goes, the agreement, 
domain verification and your plan.⌉[

Setup: what leaves your store and where it goes, the agreement, domain verification
and your plan.

[⌊Rules: the rules you write, each with the offer a shopper sees when it matches.⌉⌊
Rules: the rules you write, each with the offer a shopper sees when it matches.⌉[

Rules: the rules you write, each with the offer a shopper sees when it matches.

[⌊History: the pass over reviews your store already had, and re-judging them.⌉⌊History:
the pass over reviews your store already had, and re-judging them.⌉[

History: the pass over reviews your store already had, and re-judging them.

[⌊Requests: the messages shoppers have sent through an offer.⌉⌊Requests: the messages
shoppers have sent through an offer.⌉[

Requests: the messages shoppers have sent through an offer.

## Installation

 1. Install Postlude from the Plugins screen (Plugins  Add New Plugin, then search 
    for “Postlude”), or upload the plugin’s zip file there.
 2. Activate it. WooCommerce must be installed and active; without it, Postlude deactivates
    itself.
 3. Go to WooCommerce  Postlude. It opens on the Setup tab until Postlude is switched
    on.
 4. Read the disclosures on the Setup tab, enter a business name and contact email,
    and press “Accept the agreement and enable Postlude” to accept the Terms of Use
    and the data processing agreement. This is the first moment the plugin contacts
    the Postlude service.
 5. Verify your domain. The service proves the domain is yours by fetching `/.well-
    known/postlude-verification` over https at the root of your domain, which the plugin
    serves automatically. If the Setup tab still shows the domain as unverified, make
    sure the site answers over https at the domain root and press “Check verification
    again”.
 6. Open the Rules tab and write your first rule. Postlude analyses no review until
    at least one rule is switched on.

## FAQ

### Does Postlude stop bad reviews being published?

No. It cannot. Postlude does not write to reviews, does not moderate them and
 does
not delay them. Your store publishes reviews exactly as it did before. Postlude’s
whole function is to give a shopper who reported a problem a way to reach you about
it.

Postlude never edits, hides, filters, delays, intercepts or deletes a review,
 and
it never asks a shopper to change or withdraw one. It has no ability to do any of
those things: there is no code path in this plugin that writes a review’s text, 
its author, its status or its publication. The review the shopper wrote is published
exactly as your store would have published it without this plugin, and it stays 
that way. What Postlude does write is its own bookkeeping against a review — hidden
metadata recording that a review is waiting to be analysed or was covered by the
history pass, and holding the one-time link it issues to the shopper, in hashed 
form, with its expiry and whether it has been used. None of it is visible to a reader
of the review, and none of it changes a word of what was written. Postlude adds 
a conversation beside the review; it does not touch the review itself.

### What does Postlude add to my store?

 * One Postlude item in the WooCommerce menu (WooCommerce  Postlude), with tabs 
   for Overview, Rules, History, Requests and Setup.
 * A Rules tab where you write up to 16 rules of your own, each with its own offer.
 * An offer beside a review, shown only to the shopper who wrote it, when one of
   your rules matches the review.
 * An inline form on that offer, so the shopper can send the store a message without
   leaving the page, or a button to a web or email address you choose.
 * A WooCommerce email to the store for each request, and the Requests tab listing
   them.
 * A column on WooCommerce’s reviews screen (Products  Reviews) showing what was
   recognised in each review.
 * A pass over the reviews your store already had, which begins when you enable 
   Postlude and works through the backlog in the background, so your history is 
   covered as well as new arrivals.
 * A Setup tab that states, before you switch anything on, exactly what leaves your
   store and where it goes.

### Does anything leave my store before I switch Postlude on?

No. With the plugin installed and not enabled, no admin page and no storefront
 
page makes any outbound request. The first request is the registration you trigger
by pressing Enable.

### Is the review text stored by the service?

The review text is not persisted and not logged by the analysis service. It is
 
processed in the European Union and scored by a sub-processor in the United States,
as described under External services.

### Can I send my own instructions or prompts to the model?

Only through your rules. Each rule’s description is sent to the Postlude
 service
and, with the review text, to the model vendor, as the question that rule asks of
a review. Nothing else of yours reaches the model: not the rule’s name, not the 
offer text, the button label, the link address or the form instructions, and there
is no field for any other question, instruction or prompt. Write descriptions about
what the reviewer says, and keep personal data out of them.

### Does Postlude come with rules?

No. A fresh install has no rules, and Postlude analyses no review until you
 have
written and switched on at least one. A store can hold up to 16 rules on every plan.

### What happens when I change a rule’s description?

Reviews already judged under the earlier wording keep their verdicts, and each
 
of those tags on the reviews screen is marked “judged under earlier wording”, with
a link to re-judge. Re-judging is the only way to refresh them, and each review 
re-judged uses one analysis from your store’s monthly allowance. Renaming a rule
or changing its offer marks nothing. A deleted rule’s tags stay and read “Deleted
rule”.

### Does it need WooCommerce?

Yes. Without WooCommerce active, Postlude does nothing at all, and activating it

without WooCommerce quietly deactivates it again rather than leaving a broken plugin
behind.

### What happens if the service is unreachable?

Nothing is shown to the shopper and nothing is recorded. A timeout or a failure

costs that one review its offer; it never blocks a page, and it never changes what
the shopper sees of their own review.

### What does uninstalling remove?

Deleting Postlude from the Plugins screen removes everything it stored on your
 
site: its settings, rules and plan details, its two database tables (review verdicts
and shopper requests), the markers it keeps on reviews, and any jobs it still had
queued. The service is not contacted when you uninstall; it keeps its own records
as its Privacy Policy and Data Processing Agreement describe.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“Postlude” is open source software. The following people have contributed to this
plugin.

Contributors

 *   [ redphoenixteamou ](https://profiles.wordpress.org/redphoenixteamou/)

[Translate “Postlude” into your language.](https://translate.wordpress.org/projects/wp-plugins/postlude)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/postlude/), check out
the [SVN repository](https://plugins.svn.wordpress.org/postlude/), or subscribe 
to the [development log](https://plugins.trac.wordpress.org/log/postlude/) by [RSS](https://plugins.trac.wordpress.org/log/postlude/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 0.1.1

 * Plan allowances updated: Starter 10, Growth 100, Scale 1,000 analyses a month.

#### 0.1.0

 * First release.

## Meta

 *  Version **0.1.1**
 *  Last updated **1 day ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.4 or higher **
 *  Tested up to **7.1.2**
 *  PHP version ** 7.4 or higher **
 * Tags
 * [customer service](https://wordpress.org/plugins/tags/customer-service/)[product reviews](https://wordpress.org/plugins/tags/product-reviews/)
   [reviews](https://wordpress.org/plugins/tags/reviews/)[woocommerce](https://wordpress.org/plugins/tags/woocommerce/)
 *  [Advanced View](https://wordpress.org/plugins/postlude/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/postlude/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/postlude/reviews/)

## Contributors

 *   [ redphoenixteamou ](https://profiles.wordpress.org/redphoenixteamou/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/postlude/)