From 6d5ebdd621915c653074756d6a7bb419bcc856df Mon Sep 17 00:00:00 2001 From: Suherdy Yacob Date: Thu, 28 May 2026 16:00:19 +0700 Subject: [PATCH] docs: clean up README formatting and add comprehensive module description to manifest --- README.md | 12 ++++++------ __manifest__.py | 12 ++++++++++++ 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index fdfa564..eaa20d4 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ The primary feature added is **"Cheapest Product on Order"** applicability for **Buy X Get Y** loyalty rewards — allowing merchants to automatically discount or give away the cheapest item(s) in a customer's cart based on the number of products purchased. ---- + ## Features @@ -41,7 +41,7 @@ When multiple free items are awarded, each one targets a **different cheapest pr ### ⚡ Auto-Claim in POS Cheapest product rewards are automatically discovered and claimed in the POS UI without requiring manual product configuration on the reward. ---- + ## Dependencies @@ -51,7 +51,7 @@ Cheapest product rewards are automatically discovered and claimed in the POS UI | `pos_loyalty` | Loyalty program UI and logic in POS | | `sale_loyalty` | Backend loyalty program models | ---- + ## Configuration @@ -71,7 +71,7 @@ Cheapest product rewards are automatically discovered and claimed in the POS UI > **Important:** Set "In Exchange of" to `2` (not `1`) to get the correct `buy 2 → 1 free` ratio. > The formula is `floor(total_credits / credits_required) = free_items`. ---- + ## Technical Details @@ -102,7 +102,7 @@ Cheapest product rewards are automatically discovered and claimed in the POS UI - **`_computeUnclaimedFreeProductQtyForCheapest(...)`** — Calculates how many free items are still unclaimed based on remaining loyalty points - **`getClaimableRewards(...)`** — Extended to include cheapest-type rewards that the core skips (due to null `reward_product_id`) ---- + ## Installation @@ -119,7 +119,7 @@ Or via Odoo UI: 2. Go to **Apps → Update Apps List** 3. Search for `POS Loyalty Extend` and install ---- + ## Changelog diff --git a/__manifest__.py b/__manifest__.py index 70b44f5..077bf34 100644 --- a/__manifest__.py +++ b/__manifest__.py @@ -4,6 +4,18 @@ 'version': '1.0', 'category': 'Sales/Point of Sale', 'summary': 'Extends loyalty rewards to support cheapest product applicability and cleaner variant selection in POS.', + 'description': """ +POS Loyalty Extend +=================== +Extends the Odoo 19 Point of Sale loyalty rewards logic. + +Key Features: +------------- +* Cheapest Product Applicability: Adds support for "Cheapest Product on Order" applicability for "Buy X Get Y" loyalty rewards. +* Proportional Free Item Calculation: Dynamically scales free product quantities based on earned/required points. +* Multi-Product Reward Lines: Applies discounts across the N cheapest unique products in the cart, instead of multiplying discounts on the single cheapest product. +* Auto-Claim in POS: Simplifies the customer flow by automatically applying cheapest-product rewards without manual selection. + """, 'author': 'Suherdy Yacob', 'depends': ['point_of_sale', 'pos_loyalty', 'sale_loyalty'], 'data': [