This is my problem as well. I appreciate if anyone can help.
There is even another related scenario.
product price: 100$
credit already on customer wallet: 10%
real money paid by customer: 90%
cashback: 15% on 90$ paid
currently cashback is set for 100$ which is the product price not the money paid by the customer.