Symptom
You have posted a customer invoice but the Maximum Cash Discount is showing the calculation as expected.
Environment
SAP Business Bydesign
Reproducing the Issue
- Go to the Receivables work center.
- Select the Customer Accounts view.
- Search and find Customer ABC and click on view. (ABC represents the Customer Account code).
- In the Customer Account Monitor select the customer invoice 123. (123 represents the Customer Invoice ID).
- At the bottom of the screen you can see Payment Terms / Due Dates tab.
- Maximum Cash Discount is updated with unexpected value or the discount amount picked during the payment of the invoice is showing unexpected value.
Cause
In the customer account monitor when you select this customer invoice the values & amounts may look something like this (please note the following values are just example numbers):
- Maximum Cash Discount: -18.000,01
- Normal Cash Discount: -6.000,01
- Total Invoice value: 660000
- Cash Discount Percentage: 3%
To calculate the Maximum Cash Discount the system must first calculate a proportional value.
The Proportional value is calculated by:
Total Item Net Value/ Total Invoice value = proportional value
The system calculates a proportion as follows: 600000/660000 = 0.9090909090909
-> This data type can hold only 6 decimal places. So the 6th decimal place needs to be rounded up/down. => 0.909091
Resolution
System is calculating Maximum Cash Discount as expected.
Example: 600000/660000 = 0.909091
Maximum Cash Discount Amount calculation = -1 * proportion * Transaction Amount * Maximum Cash Discount Percentage / 100.
Calculation using this example: -1 * 0.909091 * 660000 * 3 / 100
Maximum Cash Discount: 18,000.01
Keywords
Maximum Cash Discount calculation, normal cash discount calculation taking extra decimals , KBA , AP-PAY-ADV , Payment Advice , Problem