Wallets are welcome to integrate with Kchannels. You don't need our permission to do so, although we invite you to reach out so that we can support you during the integration process and beyond.

To integrate with Kchannels, the most basic technical prerequisite is EIP-712 support.

UX considerations

Kchannels is a backend product, so it doesn't come with a native UI. Each wallet gets to design the UI (and some of the UX) around its Kchannels integration. You are welcome to innovate and do what makes sense for your product. In the wallet UI, you also have the option to indicate that you have integrated with Kchannels, or not.

Part of the UX challenge is figuring out how to manage assets that are stored in the Kchannels smart contract in addition to the assets directly stored in the user's main key/address. You might call this a fragmentation of the user's total balance. However, now that wallets are starting to integrate with various DeFi projects (each of which has its own set of contracts), we are already seeing some good solutions to this problem.

A fresh take

If you're looking for fresh approach to wallet design, how about this: imagine if a user's balance were entirely (or mostly) stored in the Kchannels smart contract. The user would immediately get all the benefits of payment channels for their entire balance, while always retaining control and the ability to move assets to Layer1 Mainnet. The user would also have the benefit of near-instant fiat onramping (from the onramp's channel directly into their channel). The wallet would be a completely independent project and fully in control of the key(s) to the assets; only the storage location of the assets would change.

This could really open up some new use-cases.