Website Product Q&A / Questions
Customer product questions with moderation, seller/customer answers and FAQ conversion
Website Product Q&A / Questions lets shoppers ask real questions on a product page, have your team or other customers answer them, and turn the best answers into a permanent FAQ block, all without leaving Odoo. Every question runs through a moderation queue, near-duplicate questions are folded together, and a scoring engine surfaces which unanswered or popular questions deserve promotion next.
Key Features
Customer questions with moderation queue
Any visitor (guest or logged-in) can ask a question on product.question; every new question starts Pending and is held in the Questions to Moderate list until a moderator calls action_publish or action_reject.
Duplicate detection folds questions together
The create() override runs find_duplicate against existing pending/published questions on the same product: a (near-)identical new question is folded into the existing one and its times_asked counter increases instead of creating a new row.
Seller and customer answers with their own approval
product.answer is flagged is_seller for staff replies (auto-approved via action_add_answer's default context) or left for other shoppers to answer, each going through its own action_approve/action_reject step, and only allowed once the parent question is published.
Helpful votes and display ordering
vote_helpful increments an approved answer's helpful_votes, and get_sorted_approved_answers/sort_answers_for_display order answers seller-and-approved first, then by helpful votes, for both the storefront and the FAQ conversion.
One-click convert to FAQ
action_convert_to_faq picks the best answer via select_best_answer and creates a product.faq entry that copies its question/answer text at conversion time, so it stays stable and independently ordered even if the source question is later edited or archived.
FAQ-candidate scoring
action_recompute_faq_candidates rescores every published, not-yet-FAQ question across the whole system by how often it was asked (times_asked) and how many helpful votes its answers collected, flagging the top candidates as is_top_faq_candidate.
Storefront Q&A section
The product page shows existing FAQ entries first, then the published Q&A feed with its answers, then an Ask a Question form, wired into the normal website_sale product template via website_product_qa.js.
Framework-free moderation and scoring engine
Duplicate normalisation, the moderation state machine, helpful-vote ordering, best-answer selection and the FAQ-candidate scoring all live in services/qa_logic.py, plain Python independently unit tested without a database.
Use Cases
Screenshots
01 Question List
02 Question Form Published
04 Faq List
Why Choose This Module
Because duplicate normalisation, the moderation workflow, helpful-vote ordering, best-answer selection and FAQ-candidate scoring all live in a framework-free, independently unit-tested Python engine, the Q&A feed stays clean and its ranking logic can be trusted and extended without touching the Odoo models or the storefront template.
Specifications
- Compatible: Odoo 18.0 / 19.0
- License: OPL-1
- Languages: 35+
- Author: Pokutsoft
- Dependencies: website_sale
- Support: odoo@gencbaris.com
- Update date: 2026-07-13
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
eCommerce (website_sale)
• Website (website) • Discuss (mail) • Invoicing (account) |
| Lines of code | 1178 |
| Technical Name |
website_product_qa_questions |
| License | OPL-1 |
| Website | https://pokutsoft.com/ |
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module