⌘K
EventCatalogAcme Inc
HomeDocs
Browse
CatalogSchemas & APIs
Organization
TeamsUsers

Settings
Domains

Reviews and ratings

How the Reviews domain accepts, moderates, publishes and aggregates product feedback.

Domain guide

Reviews & RatingsReviews & RatingsDomain•v1.0.0The Reviews & Ratings domain owns customer feedback on products — how reviews are submitted, moderated, published and ag...Ownerreviews-platformMapView docs owns customer feedback on products. Unlike the other domains, it is modelled directly with services and data stores rather than nested systems.

Domain map

Services

Review APIReview APIService•v1.0.0The public-facing API for product reviews. Accepts review submissions, serves published reviews, and is the entry point ...Publishesreview-submitted, review-flagged +1Subscribessubmit-review, flag-review +2Ownerreviews-platformMapRepoView docs accepts review commands and serves product reviews. It writes to Review DatabaseReview DatabaseContainer•v1.0.0PostgreSQL database that is the system of record for reviews and their moderation state.MapView docs and reads aggregate data from Rating CacheRating CacheContainer•v1.0.0Redis cache that serves each product's aggregate star rating with low latency.MapView docs.

Review Moderation WorkerReview Moderation WorkerService•v1.0.0Asynchronous worker that screens submitted reviews for spam, abuse and policy violations, then publishes or rejects them...Publishesreview-published, review-rejectedSubscribesreview-submitted, review-flaggedOwnerreviews-platformMapRepoView docs consumes Review SubmittedReview SubmittedEvent•v1.0.0Published when a customer submits a review. The review is stored but not yet visible — it awaits moderation. Ownerreviews-platformSchemaMapView docs and publishes either Review PublishedReview PublishedEvent•v1.0.0Published when a submitted review passes moderation and becomes visible on the storefront. Ownerreviews-platformSchemaMapView docs or Review RejectedReview RejectedEvent•v1.0.0Published when a submitted review fails moderation (spam, abuse or policy violation) and will not be shown. Ownerreviews-platformSchemaMapView docs.

Rating AggregatorRating AggregatorService•v1.0.0Keeps each product's aggregate star rating up to date as reviews are published, and serves it fast from a cache. Publishesrating-updatedSubscribesreview-publishedOwnerreviews-platformMapRepoView docs reacts to published reviews and updates the product rating model, publishing Rating UpdatedRating UpdatedEvent•v1.0.0Published when a product's aggregate rating changes as a result of a newly published review. Ownerreviews-platformSchemaMapView docs.

Core entity

ReviewReviewEntity•v1.0.0A customer's review and rating of a product, including its moderation lifecycle.Ownerreviews-platformView docs is the central aggregate. It moves from submitted to moderated to published or rejected.

Customer interactions

Customers can submit, flag and vote on reviews:

  • Submit ReviewSubmit ReviewCommand•v1.0.0Command issued by a customer to submit a review and rating for a product. Ownerreviews-platformSchemaMapView docs
  • Flag ReviewFlag ReviewCommand•v1.0.0Command issued by a customer or moderator to flag a published review for re-moderation. Ownerreviews-platformSchemaMapView docs
  • Vote Review HelpfulVote Review HelpfulCommand•v1.0.0Command issued by a customer to mark a published review as helpful (or remove their vote). Ownerreviews-platformSchemaMapView docs
  • Get Product ReviewsGet Product ReviewsQuery•v1.0.0Query to fetch the published reviews and aggregate rating for a product. Ownerreviews-platformSchemaMapView docs

Product impact

Reviews influence product discovery and conversion, but they do not own product data. Product identity remains in CatalogCatalogDomain•v1.0.0The Catalog domain owns everything about products — how they are created, maintained and made discoverable across Acme I...Ownerproduct-platformMapView docs, while review state remains in Reviews.

PreviousCustomer and identityNextPlace an order

On this page

Domain mapServicesCore entityCustomer interactionsProduct impact

Document Owners (1)

Reviews Platform

EventCatalog Backstage Integration

Missing license key for backstage integration.

Please configure the backstage plugin to embed this page into Backstage.

Configure backstage plugin →