Fairly new to D365 and still learning. We have come across an interesting scenario regarding trade agreements/discounts.
Say you have an item with unit price = 27.75 and a TA with a 5% discount was created for a customer. The customer is then expecting the price for this item to be 27.75 * .98 = 26.36
When customer orders one unit the system works as expected ( 27.75 * .95 * 1 unit) = 26.36.
However, when more than one unit is ordered we get things like:
- (27.75 * .95 * 2 units) = 52.73; the problem is we are expecting this to be (2 * 26.36 = 52.72)
- (27.75 * .95 * 10 units) = 263.63; we expect this to be (10 units * 26.36 = 263.60)
Basically D365 is NOT really looking at the TA as /customer will get the price 26.36 for this item/. Instead it is basically calculating 5% off (quantity ordered * list price) which leads to 'variable' discounted unit prices when the customer is expecting a 'fixed' discounted price of 26.36.
Has anyone run into this before? How have you solved it?
MSFT support is telling us that the only way to get the results we expect is to extend data types to allow for more precision and avoid the undesired rouding D365 is doing.
Thank you.