1Overview #
Licence. Custom Rates and Discounts is a feature of Sales, bought on its own. Without it this page is not offered, and the voucher types' Apply Custom Discount and Use Custom Price Defined For Parties switches have no effect on the vouchers - Voucher Manager keeps them as they were set.
2What is this master? #
- One record per scheme. Find (F2) loads one, Add (F3) creates, Modify (F4) edits, Save (F5) stores it — the header and every tab are written together in one transaction, so a rejected row saves nothing.
- Duplicate copies the loaded scheme — header and every tab, including quantity slabs and offer bands — into a new unsaved record. Point it at another group or account, adjust the dates, and Save; the original is untouched. Handy for renewing last season's deal or rolling the same deal out to another customer group.
- The tabs are independent: fill in only the bases you need. A scheme can be pure custom-rate, pure discount, or a mix.
- Both bases that need per-row detail — Custom Rate and Item To Item — open their own editor from the row, and those rows are saved together with the scheme.
3Step by step #
Suppose buying 1–10 of an item should give one unit of another item at 10% off.
- Press Add (F3) . Pick the Party Filter — a Custom Group of the customers the deal is for (check its members with the link below the field) — and the effective date range.
- Switch Is Item To Item discount applicable ON, go to the Item To Item tab and add the trigger item.
- Press Bands on the row: add a band with Min 1, Max 10, the item given, its rate and discount %. A rate of 0 gives it free; -1 fields mean not configured.
- Press Save (F5) and confirm, and make sure Is Active is on.
- On a voucher for a member party, sell the trigger item and press Apply Discount — the offered item arrives with the band's rate and discount. Re-running replaces, never stacks.
4Header fields #
- Selection Type decides who the scheme is for — a Custom Group (a set of customers) or a single Ledger Account . Switching it clears the previous pick, so the scheme can never point at both.
- With a Custom Group picked, View members of this custom group under the Selection field lists the ledger accounts in it — the accounts this scheme will actually reach. It opens the Custom Group master on that group, so you can add or remove members there and come straight back; the list is available while you are only viewing a scheme as well.
- Effective Date From / To — the window the deal runs in. Outside it the scheme is ignored.
- Applicable Branch List — leave empty and the scheme applies everywhere; tick branches to limit it. ERP edition only (Professional has one branch).
- Price Source Type and Price Type say where the base price comes from before the scheme adjusts it: None, Custom Rate, Master Price, Price From Cost-Sheet or Price From Pricelist.
- Is Active parks a scheme without deleting it. Item To Item Discount and Invoice Based Discount switch their tabs on.
5Tab 1 — Custom Rate #
- Sets a fixed selling price per product for this customer group or account, overriding the normal price while the scheme runs. This tab only appears while Price Source Type is Custom Rate — with None or one of the Price From… sources the base price comes from elsewhere and there is nothing to type here.
- Picking the item fills MRP (from the item's MRP price) and Rate (from its Std. Sales Price) automatically — both stay editable. Discount is an extra reduction on that rate, and Tax Class shows the product's default tax class read-only, so you can see the tax the rate will attract.
- Add Multiple (Bulk Rate Settings) loads many items at once, two-pane like the legacy form: search and tick products on the left (Select-all covers every filtered match), press Add ▸ to move them into the chosen list on the right ( ◂ Remove or ✕ takes them out), then choose a Price Source Option (Master Price, Price List, one of the Cost-Sheet prices, Stock Value — or None to bring the items in at zero), pick Price To Copy , optionally a Variation % (e.g. +5 marks every copied price up 5%), and press OK (F5) . If rate rows already exist you choose Replace All or Keep & Add New .
- A flat rate is the simple case. When one price shouldn't fit every order size, tick Qty Slabs ? on the row and press Slabs — the row's price then comes from quantity bands (see Quantity Slabs below), and the button counts the bands the row carries.
6Tab 2 — Discount – Item Wise #
- A discount on one named product. Discount Type says how the number is read ( By Percentage , By Value …), Applied On says what it is measured against ( On Amount , On Qty , On Rate …), and Disc. Value is the number itself — so "10, By Percentage, On Amount" is 10% off the line amount.
- Max Qty caps how much of the product the discount covers in a bill: buy 12 with a cap of 10 and only 10 are discounted. -1 means no cap.
- Tracking ID narrows the discount to one batch/tracking id of the item; leave it blank to cover every batch.
- Add Multiple brings in many items in one go; every added row starts as By Percentage / On Amount with the Default Discount Value you enter in the dialog, ready to fine-tune per row.
- Item-wise beats the broader bases: where a product also matches a group or brand row, the row aimed directly at the product is the one meant for it.
7Tabs 3 & 4 — Group Wise / Brand Wise #
- The same discount row — Discount Type, Applied On, Disc. Value, Max Qty — aimed at a whole Item Group (tab 3) or a whole Brand (tab 4) instead of one product.
- Every product in the group or brand inherits the discount, including products created after the scheme — that is the point of using these tabs instead of listing items one by one.
- The group list comes from the Item Group master and the brand list from the Brand master; a group or brand must exist there before it can be picked here.
- Max Qty works per matching product in the bill, with -1 for unlimited, exactly as on the item-wise tab.
8Tab 5 — Discount On Profit-% #
- Lets the margin decide the discount: at billing time the item's profit percentage is worked out, the band whose Profit % MIN – MAX range contains it is found, and that band's Discount (%) is the most that may be given. High-margin items can carry deep discounts while thin-margin items stay protected — without naming a single product.
- Bands should not overlap and should climb: e.g. 0–10% profit → 2% discount, 10–25% → 5%, 25 and above → 8%. Leave Profit % MAX empty on the top band to mean "and above".
- Redeemable Discount % splits the allowance: that part is not taken off the bill now but is accrued for the customer to redeem later.
- Applicable Product Filter confines a band to matching products (a name/code pattern); blank means the band covers everything.
9Tab 6 — Item To Item (buy this, get that) #
- Free-item and combo offers. Each row names the item the customer must buy — the trigger. What they get is defined in the row's Offer Bands (the Bands button, detailed below); the button shows how many bands the row has.
- The tab is locked until the header switch Is Item To Item discount applicable ? is turned on — that switch is what tells billing to look at this basis at all.
- Tracking ID and Item Code narrow the trigger to one batch or one alternate code of the item. Both search within the item picked on that row, so choose the item first; left blank, any batch of the item triggers the offer.
- Description is free text for the offer's name ("Monsoon combo") — it changes nothing in the calculation.
10Tab 7 — Invoice Value Based #
- Rewards the size of the whole bill rather than any one line. The tab is locked until Is discount based on invoice value applicable ? is on, and the save insists on a Discount Sundry Item — the bill-sundry line the discount posts through, so it lands in the accounts.
- Invoice Amount Totaling Basis chooses which total is compared against the bands (e.g. gross vs net), and Discount Value Posting Method chooses how the reward is written into the bill.
- Each band is a spend range — Minimum to Maximum Amount — and its reward: a Discount (%) of the bill, a flat Discount Amt , or a Discounted Item given at Qty and Discounted Rate (rate 0 = free gift). Fill only the reward you mean; a band can combine a discount with a gift.
- Make the ranges continuous and non-overlapping (0–4,999 / 5,000–9,999 / 10,000 and up) so every bill lands in exactly one band.
11Quantity Slabs — the Slabs dialog #
- Opened from a Custom Rate row (tick Qty Slabs ? first). It prices that one item by how much is bought: each band covers a quantity range — Min Qty to Max Qty — and carries its own Rate , Discount Type / Applied On / Disc. Value and a Special Discount % on top.
- Example: 1–9 pieces at 100; 10–49 at 95; 50 and above at 90 with 2% special discount. Leave Max Qty empty on the last band to mean "and above". Keep bands non-overlapping — the billed quantity should fall in exactly one.
- While the row's Qty Slabs ? is ticked, the bands replace the flat Rate/Discount typed on the row; untick it and the flat numbers apply again (the bands are kept, just ignored).
- Nothing is saved from the dialog itself: Done (F5) or Esc just closes it, and the bands travel with the scheme's own Save (F5) — a brand-new rate row and its slabs are written in one transaction. Removing the rate row removes its slabs with it.
- Entry follows the grid conventions: a blank band waits at the end, Enter moves cell to cell, Enter/Tab off the last cell appends the next band, and an untouched blank is discarded on close.
12Offer Bands — the Item-To-Item dialog #
- Opened from an Item To Item row. Each band is one step of the offer: buy between Min Qty and Max Qty of the trigger item, and get the Item Given named on the band — so different purchase levels can give different items or amounts.
- Max Applicable Qty caps how much of the given item one bill can receive ( -1 = unlimited — the offer scales with the purchase).
- Rate is what the customer pays for the given item: 0 makes it free; any other figure sells it at that concessional price. Discount Type / Applied On / Disc. Value and Extra Discount % can shave that rate further instead of, or on top of, a hard price.
- Example: buy 10–24 of item A → 1 of item B free ( rate 0, max 1 ); buy 25 and above → 1 of item B free per 25 bought ( max -1 ).
- The given item is searched — type part of its name and press … to pick from the item master.
- Like the quantity slabs, bands are held in memory and written with the scheme's Save (F5) ; Done (F5) closes the dialog, blank bands are discarded, and deleting the parent row deletes its bands.
13Codes used on every discount row #
- Discount Type and Applied On come from the configuration lists, so they read the same everywhere in the ERP; None is a real entry meaning "no discount from this row".
- Type-ahead works in every cell: type part of an entry and the best match completes; Enter commits it and moves to the next cell.
14Rules & integrity #
- A custom group or ledger account is required — the save refuses "Custom GroupName or Account Name must not be empty !" .
- Turning on Invoice Based Discount requires a Discount Sundry Item ; the save jumps you to that tab if it's missing.
- Every rate, item-discount and item-to-item row needs an item; group and brand rows need their group or brand.
- Deleting a scheme deletes every tab's rows with it (database cascade) and clears its document links.
15Why is a pick-list empty? #
- Custom Group — no rows in the Custom Group master yet; Ledger Account — none visible to your branch under shared-ledger rules. Either way, press + Create new… at the bottom of the list to create the group or account without leaving this page.
- Item Group / Brand — create them from the + Create new… footer at the bottom of their pick-lists, or in their masters; Discount Sundry Item comes from the Bill Sundries master.
- Items also carry a + Create new item footer — the full Product master opens inline and the new item lands back in the row that asked.
- Discount Type , Applied On and Price Source Type come from the configuration table; if they're empty the configuration has not been seeded.
- Items are searched, not listed — type part of a name or part number and press … . The picker shows the first 200 matches, so narrow the term if you don't see yours.
16If something does not work #
"Custom GroupName or Account Name must not be empty !"
- Why
- A scheme applies to a customer group or to a named account.
- What to do
- Fill one of them.
"Empty item list !"
- Why
- The scheme covers no products, so it could never apply.
- What to do
- Add the items, or widen the filters that pick them.
"Pick the cost-sheet price to copy (Basic Rate / Basic Cost / Net Cost / Unit Price / Retail Price / Wholesale Price / MRP)."
- Why
- Copying prices must say which price is being copied.
- What to do
- Pick it, then copy.
"Scheme #... not found."
- Why
- It was removed while you had it open.
- What to do
- Press F2 and pick again.
"No matching custom discount scheme for this party / date / items." on a voucher
- Why
- Schemes match on the party, the date AND the items - a change to any of them can take a voucher out of the scheme.
- What to do
- Check all three here before assuming the scheme is wrong.
This is the help InvoiceNET® ERP shows beside the Schemes & Promotions screen. Whether you have the screen depends on the modules of your licence and the rights your administrator has given you.
See this screen for yourself
The demo is the real product, with a company of your own.