Welcome to the Jose Madrid Salsa developer docs — explore features, APIs, and deployment guides.
Jose Madrid SalsaJMS Docs

Reviews

Product reviews and site reviews — collection, moderation, and the Google forwarding path.

Reviews

Two separate things share the word "review": a product review attached to a catalogue item by a signed-in customer, and a site review about the business as a whole. Both are moderated before they appear.

Product reviews

Review links a User to a Product:

FieldNotes
ratingInteger star rating
title, commentOptional
isVerifiedSet when the reviewer actually bought the product
statusPENDINGAPPROVED / REJECTED
moderatedAt, moderatedByModeration trail

Unique on (userId, productId)one review per customer per product. A second submission updates the first rather than stacking.

Reviews cascade-delete with their product and their user, so removing either does not leave orphans.

Site reviews

SiteReview is about the business, not a product, and does not require an account:

FieldNotes
name, emailOptional, supplied by the reviewer
sourceWhere it came from
forwardedToGoogleWhether the reviewer was passed on to leave a Google review
ipAddress, userAgentKept for spam triage
statusSame PENDING/APPROVED/REJECTED flow

Because it is unauthenticated, it is the surface that attracts spam — hence the request metadata and the mandatory moderation step.

Moderating

/admin/reviews lists both queues. Approving is what makes a review public; PENDING reviews are never rendered on the storefront.

Asking for reviews

/api/cron/review-requests runs daily at 10:00 UTC and emails recent buyers. Writing a review earns 50 loyalty points.

Google reviews

Aggregated Google reviews shown on the site are a separate, read-only integration — see Google Reviews. forwardedToGoogle on a site review records that a happy reviewer was pointed at Google to leave one there.

How is this guide?

Edit on GitHub

Last updated on

On this page