AI Reviews - generation of product reviews
AI Reviews - generation of product reviews
AI Reviews generates product reviews for OpenCart 3.x through OpenAI. It supports custom prompts, multiple languages, ratings and dates, product filters, bulk queues, CRON processing, moderation, and duplicate prevention.
Promo code will be applied automatically when you add the product to cart
Enter domain without www, http, https (e.g. example.com)
Description
AI Reviews (OpenAI) is a module for OpenCart and ocStore that automatically generates product reviews using OpenAI models.
The module uses the product name, model, manufacturer, description, attributes, and a configured prompt. Based on this information, OpenAI generates the review text, author name, and rating.
Reviews can be generated for individual products or in bulk—for the entire catalog, products without reviews, a selected category, or a selected manufacturer. To safely process large numbers of products, the module uses a persistent task queue with step-by-step AJAX processing and cron support.
Key Features
- Review generation via the OpenAI Responses API
- Automatic generation of review text, author names, and ratings
- Selection of an OpenAI model from a list
- Customizable system instructions
- Custom product prompt template
- Use of product names, models, manufacturers, descriptions, and attributes
- Review generation in one or multiple languages
- Random language selection for each review
- Random number of reviews per product within a specified range
- Random review date and time within a specified range
- Automatic or manual publication of reviews
- Bulk addition of products to the queue
- Step-by-step queue processing without a long-running PHP process
- Automatic background processing via cron
- Retries after API errors
- Protection against stuck tasks
- Controls to reduce repeated author names and review texts
- Viewing, editing, enabling, and deleting generated reviews
Using Product Information
The module automatically retrieves product information from the OpenCart database and uses it to build the request sent to OpenAI.
The following variables can be used in the prompt template:
- {name} — product name
- {model} — product model
- {manufacturer} — manufacturer or brand
- {description} — product description without HTML markup
- {attributes} — product attributes and specifications
- {language} — language of the current review
The desired rating range can be specified as plain text directly in the prompt, for example: “Desired rating: 3 to 5”.
If a product has no manufacturer, description, or attributes, the module passes the available information. It is recommended not to require the model to mention specifications that are missing from the product information.
Flexible OpenAI Configuration
- OpenAI API key
- Model selection from a list
- Temperature setting
- Maximum number of output tokens
- Reasoning effort setting
- Timeout for each API request
- Number of retries after an error
- Pause between API requests
- Number of tasks per cron run
- Secret key for cron access
- System instructions for all reviews
- Separate product prompt template
- Additional instructions for generating author names
For reasoning models, the module takes into account that internal reasoning tokens may also consume the configured output token limit. When reasoning is enabled, the module automatically uses a limit of at least 1,000 output tokens.
For standard generation of short reviews, the recommended Reasoning effort setting is none or low.
Review Language Settings
One or more languages can be specified in the general settings, separated by commas.
Example: Українська, Русский, English
If multiple languages are specified, one is selected randomly for each new review. There is no need to choose a language separately when adding products to the bulk queue—the module's general language setting is used.
Rating Control
The rating is generated by the OpenAI model according to the instructions in the prompt. The module only accepts values from 1 to 5.
To control the rating, simply add the appropriate condition to the prompt template:
- Desired rating: 3 to 5
- Desired rating: 4 to 5
- Desired rating: 5
A separate {rating} variable is not used.
Number of Reviews per Product
When adding products to the bulk queue, you can specify a range for the number of reviews to generate for each product.
- From 3 to 5 — 3, 4, or 5 tasks will be created randomly for each product
- From 3 to 3 — exactly 3 tasks will be created for each product
- From 1 to 1 — one review per product
Each review is handled as a separate queue task. This allows only a failed task to be retried without regenerating the entire set.
Review Date Settings
The module lets you set a start and end date for new reviews.
For each generated review, the date and time are selected randomly within the specified range. This prevents reviews from being created with identical dates.
- Earliest review date
- Latest review date
- Random time within the selected day
- Automatic correction of the range if the start date is later than the end date
Preventing Duplicate Author Names
The module can send OpenAI a list of previously used author names. The model is instructed not to reuse these names when generating a new review.
In the settings, you can specify the maximum number of recent unique names sent to the model.
- A higher value reduces the likelihood of repeated names
- A lower value reduces input token usage
- A value of 0 completely disables sending previously used names
For a more natural result, the module can generate full names, shortened forms, names with initials, and other appropriate variations based on the review language.
Preventing Duplicate Review Texts
To reduce similarities between new reviews, the module can send OpenAI recent review texts for the current product.
- You can configure how many previous reviews are sent to the model
- Only the latest reviews for the specific product are sent
- The length of each submitted review text is limited
- The model is instructed not to repeat phrases, structure, openings, or endings
- A separate thematic angle is selected for each new review
- A value of 0 disables sending previous reviews
Increasing the number of review texts sent improves duplicate control but increases OpenAI input token costs.
Review Themes
To prevent reviews of the same product from differing only by a few words, the module automatically varies the suggested focus of each review.
Possible themes include:
- First impressions and reasons for choosing the product
- Everyday use and convenience
- Build quality and materials
- Packaging, delivery, and initial setup
- Whether the product meets the buyer's expectations
- A specific practical use case
- A useful detail noticed during use
- Value for money
- Ease of setup, care, or maintenance
- Recommendations for a particular type of buyer
Adding Products to the Queue
The module allows you to add either an individual product or a group of products to the queue based on specified conditions.
- One selected product
- Products without reviews
- All products in the store
- Products from a selected category
- Products from a selected manufacturer
- Enabled products only
- Disabled products only
- Products with any status
- Filter by the earliest product creation date
- Filter by the latest product creation date
- Range for the number of reviews per product
An individual product can be found by name or model using OpenCart's standard autocomplete feature.
Generation Queue
Each future review is stored as a separate task in a persistent database queue. The queue supports pagination. The number of rows per page is determined by the config_limit_admin setting in OpenCart. If the value is missing or set to zero, 20 rows per page are displayed.
Task Statuses
- pending — task is waiting to be processed
- processing — task is being processed
- retry — an error occurred; the task is waiting for another attempt
- done — review was successfully created
- failed — the allowed number of retries has been exhausted
If a task remains in the processing state because a PHP process terminated unexpectedly, the module automatically returns it to the retry state after 15 minutes.
Queue Management
- Delete an individual task
- Clear the entire queue
- Protect an active task from deletion during processing
- Paginate the task list
- Display the latest error message
- Automatically retry processing after a temporary error
Step-by-Step Manual Processing
When you click the start button, the module does not attempt to process the entire queue in a single PHP request.
Instead, it uses step-by-step AJAX processing:
- The browser starts processing one task
- The module generates and saves one review
- The progress indicator is updated
- The browser automatically starts the next task
- The process continues until all available tasks have been processed
Progress Indicator
The bulk queue tab displays a progress indicator.
- Number of pending tasks
- Number of tasks being processed
- Number of successfully completed tasks
- Number of failed tasks
- Overall queue completion percentage
The indicator updates after each AJAX request without reloading the entire page.
Automatic Processing via Cron
The module automatically generates a ready-to-use cron URL and crontab command in its settings. The recommended cron frequency depends on the number of products, OpenAI API limits, and the configured batch size. For gradual, continuous queue processing, running it once per minute is usually sufficient.
Retries After Errors
If the OpenAI API is temporarily unavailable, the request limit is exceeded, or a response does not contain valid structured data, the task is not deleted.
- The number of retry attempts is configurable
- The error message is saved in the queue
- Once all attempts are exhausted, the task receives the failed status
Managing Generated Reviews
The administration area has a separate tab for reviews created by the module.
- View the list of generated reviews
- Display the product and author
- Display the rating and status
- Display the review creation date
- Display the OpenAI model used
- Display the number of input and output tokens
- Edit the author, text, rating, and status
- Edit in a modal window without reloading the page
- Quickly enable or disable a review
- Green button for an enabled review
- Red button for a disabled review
- Delete an individual review
- Bulk delete all generated reviews
- Paginate the review list
Through its own interface, the module only allows you to edit and delete reviews that it created and registered in its generated-reviews table. Regular customer reviews are not modified.
Publishing Reviews
You can select the initial status of new reviews in the settings.
- Enabled — the review becomes visible in the store immediately
- Disabled — the review is saved for administrator review before publication
The status can be changed at any time from the generated reviews list or the editing modal.
Saving Reviews
Completed reviews are stored in the standard OpenCart reviews table, making them compatible with OpenCart's standard review display and management system.
Token Usage
The cost of each request depends on the selected model, the length of the product description, attributes, prompt, and the number of author names and previous reviews submitted.
Separate settings are available to control costs:
- Maximum number of output tokens
- Number of names used for duplicate prevention
- Number of previous product reviews
- Reasoning level
- OpenAI model selection
To save tokens, you can reduce the number of names and reviews sent or set these values to 0. A high reasoning level is usually not necessary for short product reviews.
OpenAI API Costs
Important: Reviews are generated through the paid OpenAI API. API usage is not included in the module price and is paid directly to OpenAI by the store owner.
The actual cost depends on:
- Selected OpenAI model
- Number of input tokens
- Number of output and reasoning tokens
- Length of product descriptions and attributes
- Number of author names and previous reviews submitted
- Number of reviews generated
Pricing, model availability, limits, and billing rules may change. Current information is available on the official page: OpenAI API Pricing.
Benefits
- Automates content preparation for large catalogs
- Bulk generation without running one long PHP process
- Flexible selection of products to process
- Uses actual product information
- Custom prompts and generation rules
- Multilingual support
- Control over dates, ratings, and publication status
- Reduces repeated author names and review texts
- Manual and automatic queue processing
- Edit results before publication
- Tracks token usage
- Uses the standard OpenCart review system
Compatibility
- OpenCart 3.x
- ocStore 3.x
- Standard OpenCart review system
- Standard OpenCart 3 admin interface
- Ukrainian, English, and Russian localizations
The module does not modify the product page template. Reviews are displayed in the storefront using the installed OpenCart theme.
System Requirements
- OpenAI account
- Active OpenAI API key
- Positive OpenAI API balance or active API billing
Important Limitations
- Results depend on the selected model, prompt, and product information
- The module does not guarantee identical results when generation is repeated
- OpenAI may refuse to process certain requests in accordance with its policies
- Model availability depends on the OpenAI account and region
- Request limits are determined by the OpenAI API usage tier
- Increasing the context and number of previous reviews increases token usage
- Generated text should be reviewed before publication
- The module cannot verify whether a real customer has actually used the product
Installation
- Upload the archive via Extensions → Extension Installer
- Go to Extensions → Modifications and refresh the modification cache
- Open Extensions → Extensions → Modules
- Install the AI Reviews (OpenAI) module
- Open the module settings
- Enter your OpenAI API key
- Select the model and generation parameters
- Check the system and product prompts
- Set the language, date range, and status of new reviews
- Enable the module and save the settings
- If needed, add the generated cron command in your hosting control panel
License
One license covers one domain and its subdomains.
OpenAI API services, payment for consumed tokens, topping up the OpenAI balance, and configuration of third-party hosting, servers, or cron are not included in the module license price.
Adaptations for a non-standard admin panel, a modified database structure, or a third-party review system are provided separately.
Specifications
- OpenCart Version
- 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5
- Module Localization
- Ukrainian, English, Russian
- Support Language
- Ukrainian, English, Russian
- Activation Method
- Automatic activation
- Ioncube Loader
- No (not required)
- Developer Server Connection
- No
- If Developer Server Unavailable
- Extension works
- PHP Version
- 7.3 7.4 8.0 8.1 8.2 8.3 8.4 8.5
- Compatible with Templates
- Not needed
Reviews (0)
Please log in to leave a review.
Log inNo reviews yet
Be the first to review this product!
Questions (0)
Please log in to ask a question.
Log inNo questions yet
Be the first to ask a question about this product!