The only options are applying a discount as a discount line or a discount on the whole transaction.
Alternatively, price levels might allow you to get to the same amount, if you don’t need to display the discount.
Create transaction line field ( discount)
Create workflow with set field value on item sublist
And use formula to apply like Final Price = Initial Price – (Initial Price x Discount Rate)