Przejdź do zawartości
Odoo Menu
  • Zaloguj się
  • Wypróbuj za darmo
  • Aplikacje
    Finanse
    • Księgowość
    • Fakturowanie
    • Wydatki
    • Arkusz kalkulacyjny (BI)
    • Dokumenty
    • Podpisy
    Sprzedaż
    • CRM
    • Sprzedaż
    • PoS Sklep
    • PoS Restauracja
    • Subskrypcje
    • Wypożyczalnia
    Strony Internetowe
    • Kreator Stron Internetowych
    • eCommerce
    • Blog
    • Forum
    • Czat na Żywo
    • eLearning
    Łańcuch dostaw
    • Magazyn
    • Produkcja
    • PLM
    • Zakupy
    • Konserwacja
    • Jakość
    Zasoby Ludzkie
    • Pracownicy
    • Rekrutacja
    • Urlopy
    • Ocena pracy
    • Polecenia Pracownicze
    • Flota
    Marketing
    • Marketing Społecznościowy
    • E-mail Marketing
    • SMS Marketing
    • Wydarzenia
    • Automatyzacja Marketingu
    • Ankiety
    Usługi
    • Projekt
    • Ewidencja czasu pracy
    • Usługi Terenowe
    • Helpdesk
    • Planowanie
    • Spotkania
    Produktywność
    • Dyskusje
    • Sztuczna inteligencja
    • IoT
    • VoIP
    • Wiedza
    • WhatsApp
    Aplikacje trzecich stron Studio Odoo Odoo Cloud Platform
  • Branże
    Sprzedaż detaliczna
    • Księgarnia
    • Sklep odzieżowy
    • Sklep meblowy
    • Sklep spożywczy
    • Sklep z narzędziami
    • Sklep z zabawkami
    Żywienie i hotelarstwo
    • Bar i Pub
    • Restauracja
    • Fast Food
    • Pensjonat
    • Dystrybutor napojów
    • Hotel
    Agencja nieruchomości
    • Agencja nieruchomości
    • Biuro architektoniczne
    • Budowa
    • Zarządzanie nieruchomościami
    • Ogrodnictwo
    • Stowarzyszenie właścicieli nieruchomości
    Doradztwo
    • Biuro księgowe
    • Partner Odoo
    • Agencja marketingowa
    • Kancelaria prawna
    • Agencja rekrutacyjna
    • Audyt i certyfikacja
    Produkcja
    • Tekstylia
    • Metal
    • Meble
    • Jedzenie
    • Browar
    • Prezenty firmowe
    Zdrowie & Fitness
    • Klub sportowy
    • Salon optyczny
    • Centrum fitness
    • Praktycy Wellness
    • Apteka
    • Salon fryzjerski
    Transakcje
    • Złota rączka
    • Wsparcie Sprzętu IT
    • Systemy energii słonecznej
    • Szewc
    • Firma sprzątająca
    • Usługi HVAC
    Inne
    • Organizacja non-profit
    • Agencja Środowiskowa
    • Wynajem billboardów
    • Fotografia
    • Leasing rowerów
    • Sprzedawca oprogramowania
    Przeglądaj wszystkie branże
  • Community
    Ucz się
    • Samouczki
    • Dokumentacja
    • Certyfikacje
    • Szkolenie
    • Blog
    • Podcast
    Pomóż w nauce innym
    • Program Edukacyjny
    • Scale Up! Gra biznesowa
    • Odwiedź Odoo
    Skorzystaj z oprogramowania
    • Pobierz
    • Porównaj edycje
    • Wydania
    Współpracuj
    • Github
    • Forum
    • Wydarzenia
    • Tłumaczenia
    • Zostań partnerem
    • Usługi dla partnerów
    • Zarejestruj swoją firmę rachunkową
    Skorzystaj z usług
    • Znajdź partnera
    • Znajdź księgowego
    • Spotkaj się z doradcą
    • Usługi wdrożenia
    • Opinie klientów
    • Wsparcie
    • Aktualizacje
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Zaplanuj demo
  • Cennik
  • Pomoc
Musisz się zarejestrować, aby móc wchodzić w interakcje z tą społecznością.
Wszystkie posty Osoby Odznaki
Tagi (Zobacz wszystko)
odoo accounting v14 pos v15
O tym forum
Musisz się zarejestrować, aby móc wchodzić w interakcje z tą społecznością.
Wszystkie posty Osoby Odznaki
Tagi (Zobacz wszystko)
odoo accounting v14 pos v15
O tym forum
Pomoc

How can I process a refund in POS using a 10% discount coupon?

Zaprenumeruj

Otrzymaj powiadomienie o aktywności w tym poście

To pytanie dostało ostrzeżenie
posloyaltycouponsRefunds
1 Odpowiedz
2519 Widoki
Awatar
TechieGlance, Yash

I’m working with Odoo POS and have a question regarding refunds when a discount coupon is applied.

Here’s the scenario:

  1. I create a POS order with two products:
    • Product A: 295.0
    • Product B: 4000.0
      Total before discount: 4295.0
  2. I apply a 10% discount coupon, which gives a discount of 429.5, making the total 3865.5.

Now, let’s say the customer wants to return only Product A (priced at 295.0).

Here’s the issue:

  • Since the 10% discount was applied to the entire order, the effective price of Product A after the discount is 295.0 - 10% = 265.5.
  • However, when I attempt to refund the item in POS, it wants to refund the full amount of 295.0 instead of 265.5.

What I want:

I want the refund amount to reflect the discounted value of the item, not the original price. So, in this case, the refund should be 265.5, not 295.0.

My question is:

How can I configure Odoo POS (or customize it) so that partial refunds take into account the proportional discount applied by the coupon, and refund only the discounted value of the product instead of the full price?

0
Awatar
Odrzuć
Awatar
DataInteger Consultancy Services LLP, DataInteger Consultancy Services LLP
Najlepsza odpowiedź

Odoo POS does not support this behavior out-of-the-box , so to achieve your goal — making partial refunds consider the proportional coupon discount — you need to customize both the POS frontend (JavaScript) and optionally the backend (Python) if you're using accounting or syncing with invoices.

Summary of the Required Customization

When a coupon or global discount is applied on a POS order:

  • Each product line should store the proportional share of the discount .
  • If a product is refunded, the refund amount should match the discounted value , not the full price.

HOW TO CUSTOMIZE — STEP BY STEP
STEP 1: Extend POS Order Line to Store Proportional Discount

In the POS frontend (JS):

  • Modify the logic when a coupon/global discount is applied .
  • Calculate each line's discount share and store it.

Example:

// Extend OrderLine model
const OrderlineSuper = Orderline.prototype;
Orderline = Orderline.extend({
    set_discounted_price: function(discounted_price) {
        this.discounted_price = discounted_price;
    },
    get_discounted_price: function() {
        return this.discounted_price || this.get_unit_price();
    },
});

When applying the coupon, distribute the discount proportionally:

const total = order.get_total_without_tax(); // eg 4295.0
const discount_value = total * 0.10; // 429.5
order.get_orderlines().forEach(function(line) {
    const line_value = line.get_price_without_tax();
    const proportional_discount = (line_value / total) * discount_value;
    const discounted_price = line.get_unit_price() - (proportional_discount / line.get_quantity());
    line.set_discounted_price(discounted_price);
});

STEP 2: Modify the Refund Process to Use Discounted Price

When refunding:

In the ReturnProductScreen , before adding a return line:

const discounted_price = original_line.get_discounted_price();
refund_line.set_unit_price(discounted_price);


Thanks & Regards,

Email: contact@datainteger.com 

0
Awatar
Odrzuć
Podoba Ci się ta dyskusja? Dołącz do niej!

Stwórz konto dzisiaj, aby cieszyć się ekskluzywnymi funkcjami i wchodzić w interakcje z naszą wspaniałą społecznością!

Zarejestruj się
Powiązane posty Odpowiedzi Widoki Czynność
[V17+] How to Operate Prepaid Packages or Memberships with Benefits Using Loyalty Cards?
pos loyalty quickstart
Awatar
1
maj 26
666
Point of Sale - When We redeem points, new points are also added
pos loyalty 18.0
Awatar
Awatar
1
sie 25
2400
Bonus Loyalty Points in Odoo POS
pos loyalty points
Awatar
Awatar
Awatar
2
lip 25
3262
How to redeem loyalty points?
pos loyalty points
Awatar
Awatar
Awatar
2
maj 25
12766
Apply loyalty program to certain customers Rozwiązane
pos loyalty POS
Awatar
Awatar
Awatar
2
maj 25
3214
Społeczność
  • Samouczki
  • Dokumentacja
  • Forum
Open Source
  • Pobierz
  • Github
  • Runbot
  • Tłumaczenia
Usługi
  • Hosting Odoo.sh
  • Wsparcie
  • Aktualizacja
  • Indywidualne rozwiązania
  • Edukacja
  • Znajdź księgowego
  • Znajdź partnera
  • Zostań partnerem
O nas
  • Nasza firma
  • Zasoby marki
  • Skontaktuj się z nami
  • Oferty pracy
  • Wydarzenia
  • Podcast
  • Blog
  • Klienci
  • Informacje prawne • Prywatność
  • Bezpieczeństwo Odoo
الْعَرَبيّة Català 简体中文 繁體中文 (台灣) Čeština Dansk Nederlands English Suomi Français Deutsch हिंदी Bahasa Indonesia Italiano 日本語 한국어 (KR) Lietuvių kalba Język polski Português (BR) română русский язык Slovenský jazyk Slovenščina Español (América Latina) Español Svenska ภาษาไทย Türkçe українська Tiếng Việt

Odoo to pakiet aplikacji biznesowych typu open source, które zaspokoją wszystkie potrzeby Twojej firmy: CRM, eCommerce, księgowość, inwentaryzacja, punkt sprzedaży, zarządzanie projektami itp.

Unikalną wartością Odoo jest to, że jest jednocześnie bardzo łatwe w użyciu i w pełni zintegrowane.

Website made with

Odoo Experience on YouTube

1. Use the live chat to ask your questions.
2. The operator answers within a few minutes.

Live support on Youtube
Watch now