Discount Schema, Discount, Contract, Strategies and Promotions
The purpose of this page is to help you understand how to map your discount needs into iDempiere.
Note the Customer window has a Contract Prices subtab. This data/table is available for reference; however it is not used in code. Said another way, this record is there for you to create/document a reminder for users. See below for more details about how to use this information.
2014-05-27 AM Discount Schema and General Discount Strategies
Introduction
0:40:00 Base Pricelist
0:01:15 Price List Schema - engine to take a base price list and create a new version
0:02:15 Price List Break - for a product, for a BP, for a given quantity on a given SO line, here are the prices
0:04:15 Example complex discount - forum post
0:06:15 Discount Schema
0:08:00 Post Trade Discount at the Accounting Schema window
0:10:30 Calculation of taxes - ACTION: Can you base taxes off of List Price?
0:20:45 Demonstrate Price List Price Break at Sales Order
0:24:00 Discounts from order totals
0:25:10 Using Products and Charges called "Discount" on Order lines as negative amounts to represent discounts.
0:26:30 How to apply Web Store discounts in an Order
0:27:45 Itemizing discounts
0:28:00 Product and Charge Discounts can be challenging when a Sales Order has multiple Invoices
0:30:00 How to give a flat discount to a specific BP
Note: to use the Business Partner window => Flat Discount field, you must choose a Discount Schema that is of Type = "Flat Percent" and B.Partner Flat Discount = "Y"
0:31:00 Creating a Sales Order header process/button to apply discounts based on known criteria
0:34:15 Demonstrate Shipping/Invoicing an Order that includes a Discount Product
0:37:00 Tangent to discuss value of using Product as discount because of relation to Price List
0:41:15 Review Invoice posting for Discount Products
0:44:45 Demonstrate how to create a Discount Product and Charge
0:46:45 Example creating a Price List whose Limit Price is equal the Product's cost (ACTION: explain why set to $10)
Answer: because the cost was null, it used the Base Price List's Limit Price ($10)
2014-08-05 AM Promotions
Introduction - how relates to the bigger topic of Discount Strategies
0:01:00 how to create the Model Validator entry for Promotions
0:14:00 Review code for how promotions are chosen for a given order
0:16:00 Promotion setup -> Promotion Line Tab
0:17:15 Promotion setup -> Promotion Quantity Distribution Tab
0:18:45 CORRECTION Distribution type compares Promotion Quantity Distribution Quantity with Order line Qty
0:19:30 Promotion setup -> Promotion Reward Tab
0:20:00 Reward Type (Flat Discount, Percentage, Absolute Amount)
0:22:00 discussion to support the above CORRECTION
Link to Adaxa Promotion Document (note: Adaxa changed their website - you will need to contact Adaxa for this document. I do not believe it is publicly available anymore)
0:28:00 Sales Order demonstration where multiple promotions could apply. Play with isActive and Relative Priority to dictate which promotion applies.
0:30:00 Charges can be taxable or not taxable based on Tax Category
0:30:45 More discussion about how Sales Orders apply promotions (promo code or not)
0:33:30 Back to picture of relationship between POS, Web Store, and ERP
0:35:30 Making sure inventory levels are accurate for "Buy 3 and Get 1 Free" promotion
Customer Window => Contract Prices Subtab
As stated at the top of this page, the Customer Window => Contract Prices subtab is not used in code. This does not mean that it is not valuable to you. Here are ways you can use this information:
Add this table as a subtab to Order windows so that users can see the reference records.
Add this information to the order window => Quick Info section to show all the discount/pricing levels for this Business Partner.
Implement the Product Pricing plugin interface to make the system consider these records when defaulting prices on (purchase, sales or both) windows.