Discounts... a way to incentivize customers to buy more and yet, you are always balancing complexity versus ease of use. ASAP uses a conservative methodology to calculate and add discounts to an invoice. At all times, we take the position that a user in the Admin Console can always assign an additional discount to reduce the price paid by a customer.
If you create an invoice and then subsequently add additional items to the invoice after the invoice has been initially built, automatic discounts will not take into account previous items added to the invoice. You will need to manually add additional discounts to obtain the final pricing you want to charge the student. This is to avoid over-discounting an invoice, a problem that we feel is better to avoid then under-discounting.
Example: Add two items to an invoice. Later, add a 3rd item. This 3rd item triggers a volume discount of buy 2, get 1 10% off. That addition of the 3rd item will not trigger the discount. You will need to discount the invoice via a coupon to obtain the correct final pricing. Why? Automatically applying the discount, when the 3rd item could be added an hour, a day or even a month later, may not be the correct method. So we err on the side of conservative calculation.
Public Portal: this is not how discounts are created on the Public Portal. All invoices are created at one time with one process for adding items. So discounts are always automatically calculated. Why different than the Admin Console: because customers cannot take an open invoice and add items later. It is created, finalized, and paid... all in one process.