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




Installation
- Install Postlude from the Plugins screen (Plugins Add New Plugin, then search for “Postlude”), or upload the plugin’s zip file there.
- Activate it. WooCommerce must be installed and active; without it, Postlude deactivates itself.
- Go to WooCommerce Postlude. It opens on the Setup tab until Postlude is switched on.
- 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.
- Verify your domain. The service proves the domain is yours by fetching
/.well-known/postlude-verificationover 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”. - 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.
ContributorsTranslate “Postlude” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
0.1.1
- Plan allowances updated: Starter 10, Growth 100, Scale 1,000 analyses a month.
0.1.0
- First release.
