I am interested to know what is the use case of actually sending fee to admin user in each transaction vs just cutting 5% off the send amounts. Admin user can withdraw anytime as anyway he is having complete access to wallet. Note that if you create extra send output for each payment you are increasing the tx size which would result in higher tx fee as well.
Some services like a Bitcoin exchanges, mixers or marketplaces or shops could use this feature.
If the A wan'ts to pay B 0.01 BTC, A needs to add 0.001 (for a fee) to the sendet amount.
But is the fee just is 5%, the admin would make more income (bigger bitcoin amount = more fees income for the admin)
and the A don't need to pay more than he has.
Btw, could you add multisignature address support, so the admin can't access the funds.