After careful thoughts and industry trends, this is not a recommended approach as requires users to interact with the contract directly to perform a payment, while its convinient to save costs it still requires token approval and additional risks for end user. Useful only for educational purposes.
If you still want to use it, do as follows:
- Deploy DepositsEnergyRouter.sol contract
- Assign Contract Sponsor to 100%
- Perfom Token approval using your own UI (You can check the /client example adjusting th necesary ABI and your own contract address
- Now you can sponsor any TRC20 transfers using the "executeTransfer" function from the DepositsEnergyRouter contract.
Enjoy