Most business owners do not have one price. A shop may sell the same carton of juice at one price in a city branch and another price near a school. A restaurant may charge normal menu prices at lunch, then run a happy-hour offer from 5:00pm to 7:00pm on Fridays. A pharmacy may keep a standard walk-in price, a clinic-partner price, and a staff price. A wholesaler may sell one piece at retail price, but give better rates to customers buying by the carton.
If the software only allows one selling price per product, the business starts working around it. Staff rename products. Managers edit prices by hand. Cashiers memorise exceptions. Reports become difficult to trust. That is exactly the problem Maduuka's price-list model is built to avoid.
Direct Answer
What are multiple price lists in Maduuka?
Multiple price lists are controlled pricing overrides that let Maduuka use different selling prices by branch, customer group, promotion, or time window while keeping one product catalogue and one default selling price. They help managers offer flexible prices without losing auditability at the POS.
The basic idea: one default price, controlled overrides
In Maduuka, the product still has a default selling price. That matters. Every business needs a normal price that reports, receipts, stock valuation, and daily sales can fall back to. But Maduuka also allows controlled overrides through price lists.
A price list is a named set of product prices used for a specific business purpose. It may represent standard retail prices, wholesale prices, city-centre branch prices, neighbourhood branch prices, weekend menus, happy-hour drinks, clinic partner rates, or staff meal rates.
The point is not to create pricing chaos. The point is to stop pricing chaos from happening at the counter. Instead of asking staff to remember special cases, the manager defines the price once, assigns it to the right outlet, customer group, or promotion rule, and lets the POS apply it.
Why one price is not enough for real business
African small and medium-sized businesses are practical. They adjust quickly. Rent, transport costs, supplier prices, customer relationships, and local competition change from place to place. A single-price system assumes every sale happens under the same conditions. Real business does not work like that.
Take a multi-branch retailer in Kampala. The branch in a mall may carry higher operating costs than a branch in a residential area. The same product can have the same barcode, same stock record, and same supplier cost, but still need different selling prices. If the owner changes the product's main price every time one branch needs an adjustment, all branches are affected.
Maduuka separates the default product price from the selling context. A branch price list can override the price for one outlet. If a product is missing from the branch list, Maduuka falls back to the default product price instead of forcing a blank or wrong value. That fallback means a manager can create a branch price list only for the products that differ, rather than duplicating the whole catalogue every time.
Price Resolution
How Maduuka resolves a POS price
When a cashier adds an item to the cart, Maduuka does not treat the price displayed by the browser or mobile app as the final authority. The server resolves the price again using the active business rules.
Active branch price list
Maduuka first checks whether the current outlet has an active price list and whether that list contains the product being sold.
Customer-group price list
If the branch does not override the price, the system can check the selected customer's group, such as wholesale, VIP, clinic partner, or staff.
Promotion or happy hour rule
Next, Maduuka evaluates active time-based rules or promotional discounts that apply to that product, category, or menu scope.
Default selling price
If no specific override exists, the POS falls back to the normal local selling price on the product master record.
Unpriced fallback
If there is still no valid price, the item is treated as unpriced so management can fix it instead of silently billing the wrong amount.
Branch price lists: different outlets, same catalogue
Branch pricing is the easiest example to understand. Imagine a supermarket group with three outlets: Main Street, University Branch, and Airport Road. The owner wants bread and water priced differently at Airport Road because the rent and logistics costs are higher there, but most other products should remain the same across all branches.
In Maduuka, the manager can create a price list called "Airport Road POS Prices" and enter only the products that need different prices. That list is assigned to the Airport Road branch. One product. One stock record. Different controlled selling prices.
This is cleaner than cloning products per branch, which is one of the fastest ways to damage inventory reporting. Cloned products make stock harder to reconcile, barcode searches less reliable, and sales analysis noisier than it needs to be.
Happy hour pricing: time matters too
Restaurants and bars need another layer: time. A happy hour is not just a lower price. It is a lower price that applies only on certain days and during certain hours. A manager may want cocktails discounted every Friday from 5:00pm to 7:00pm, or soft drinks reduced during lunch on slow weekdays.
In Maduuka, this is safer as a scheduled rule on top of the normal price-resolution flow. The restaurant module can treat happy-hour discounts as server-controlled rules with active status, start time, end time, days of the week, discount percentage, product scope, category scope, and franchise timezone handling.
That last point matters. If a restaurant says happy hour starts at 5:00pm in Kampala, the system should evaluate 5:00pm Kampala time, even if the server is hosted elsewhere. This is better than editing product prices down at 5:00pm and trying to remember to change them back at 7:00pm.
Customer-group price lists: reward the right buyers
Not every discount is about location or time. Some are about the customer. A wholesaler may have retail buyers, resellers, schools, clinics, and long-term account customers. A pharmacy may sell to walk-in customers at one price and approved clinics at another. A distributor may have different rates for agents depending on volume.
Customer-group price lists let the business define these rates once. When the cashier selects the customer, Maduuka can apply the customer's group pricing where it exists. If the product is not listed in that customer-group price list, the system falls back to the normal price.
This avoids a common failure in weak POS systems: a discount group accidentally turning half the catalogue into zero-priced items. The manager keeps the relationship pricing. The cashier keeps moving.
Business Use Cases
Where different businesses use multiple price lists
The common thread is simple: the business wants flexibility, but the owner still wants control.
Retail shops
Branch prices, customer tiers, seasonal offers, slow-moving stock campaigns, and contractor rates for hardware or building supplies.
Restaurants and bars
Happy hour rules, staff meals, room service prices, delivery-channel menus, event menus, and outlet-specific pricing.
Pharmacies
Walk-in prices, clinic partner rates, staff purchases, corporate arrangements, and tightly audited price exceptions.
Wholesalers
Reseller rates, carton pricing, territory prices, negotiated account rates, and volume-sensitive margin control.
Salons and service businesses
Member prices, off-peak rates, branch prices, weekday promotions, and package pricing without renaming services.
Hotels
Room rate plans, restaurant menu variations, laundry rates, conference services, partner accounts, and long-stay guest pricing.
Control Layer
Why Maduuka limits active POS price lists
Unlimited price lists sound attractive until someone has to manage them. Too many active lists make it hard to know which price is correct. Pricing should be flexible, but it should also be explainable.
Cashiers do not need to memorise exceptions or manually edit prices at the counter.
Managers can explain why a product sold at a specific price by looking at the active rule path.
Products are not cloned per branch, which keeps inventory, barcode, and reporting records cleaner.
Promotions can stop automatically when their time window closes.
Reports can separate real margin issues from normal approved pricing strategy.
Server-side price resolution protects the business from stale devices and cached POS data.
Reporting Benefit
Price lists turn pricing into a management decision
Good pricing is not only about charging the right amount at the till. It is also about understanding what happened later. When pricing is handled through controlled lists and rules, reports can answer better questions.
Which branch is selling the same product at a lower margin?
Did happy hour increase volume enough to justify the discount?
Which customer groups receive the most price support?
Are staff using manual discounts where a price-list rule should exist?
Which exceptions have become common enough to become the new default price?
A practical example: Friday happy hour
Let us say Amina runs a restaurant with a bar. Fridays are busy, but the early evening is slow. She wants a happy hour from 5:00pm to 7:00pm every Friday on selected drinks.
In Maduuka, the setup can follow this pattern:
- Keep the normal menu prices as the default prices.
- Create a happy-hour rule for Fridays.
- Set the time window from 17:00 to 19:00.
- Apply it to the drinks category or to selected products.
- Let the POS calculate the active price or discount at billing time.
Cashiers do not need to remember the clock. The manager does not need to edit prices twice every Friday. The system applies the rule when it is valid and stops applying it when the window closes. When Amina checks reports on Saturday morning, she can see what the offer actually did.
The bigger reason
Multiple price lists are not a fancy feature. They are a recognition that businesses sell under different conditions. The mistake is pretending those conditions do not exist.
Maduuka's pricing model gives each business a controlled way to handle those conditions: branch pricing for location differences, customer-group pricing for relationship differences, promotions for campaign differences, and happy-hour rules for time differences.
The owner gets flexibility. The cashier gets clarity. The accountant gets cleaner records. That is the real value.
FAQ
Multiple price list questions people usually ask
What is a multiple price list in Maduuka?
A multiple price list in Maduuka is a controlled set of product prices used for a specific selling context, such as a branch, customer group, wholesale tier, staff rate, or promotion. The product keeps a default selling price, while approved price lists override it only when their rules apply.
Why does a POS system need more than one product price?
A single product may need different selling prices by branch, customer relationship, buying volume, day, time, or promotion. Multiple price lists let the business handle those differences without duplicating products or asking cashiers to remember exceptions.
How does Maduuka decide which price to use at the counter?
Maduuka can check the active branch price list, then customer-group pricing, then active promotion or happy-hour rules, then the normal default selling price. If no valid price is found, the item is treated as unpriced so the issue is fixed deliberately.
Can restaurants use price lists for happy hour?
Yes, but the safer operating model is to keep base menu prices and apply scheduled happy-hour rules on top of them. That lets the POS apply the lower price only during the valid days and hours, then stop automatically.
Do price lists improve reporting?
Yes. Controlled price lists make the final selling price traceable, so managers can review branch margin, customer-tier discounts, promotion performance, and manual discount behaviour after the sale.
Next Step
See Maduuka pricing control against your real catalogue
The useful test is practical: your branches, your products, your customer groups, your promotion rules, and your reporting questions. Maduuka is built so those prices can stay flexible without becoming guesswork at the counter.