Shipl is a service who provide meta-transaction at scale through an API and a SDK. By doing so we are capable to dramatically improve the UX in your dApps because the user doesn't need any more to think about ether or gas.
We use a technology called "meta-transaction" which enable user to sign an intent transaction and delegate the execution to a third-party called the gas provider.
A schema is better than a long discourse.
Yes! Thanks to our SDK, which is a web3 provider, you literally just have to change two lines in your code.
No! You don't need to. In our current ecosystem lot of peoples started to work on meta-transaction and it's true that in the common implementation the method
msg.sender is not supported. But thanks to the use of a proxy contracts at Shipl we are capable to provide a service which is compatible with all the past and present smart contracts.