Calculate the actual order row price

Is there any class or extension methods that can help with calculating the actual amount of an order row? E.g. what a customer actually paid for a product, order row price minus product discounts for that row and the part of order discounts affecting that row.

The system must do this calculation for example on a partial return. Is that logic exposed somewhere so it can be used from somewhere else?

Litium version: 8.30.4