Both solutions offer a similar feature set:
- Create Wallets for your users
- Retrieving the native balance of these wallets
- Retrieving the (non-)fungibles (ERC-1155, ERC-721 and ERC-20) of these wallets
- Performing transfers of native and fungible tokens on these wallets
- Performing NFT-transfers on these wallets
- Performing contract calls on these wallets
- Signing messages with these wallets
- Importing / Exporting wallets
However, there are several key conceptual differences between the Wallet-API and the Wallet-Widget solution. These are explained below.
|Technical Architecture / Integration||The Wallet-API is a pure REST backend-to-backend integration.|
The widget is an SDK that is integrated in your frontend / browser application.
|Authentication / Security|
You will receive a
You will receive a
|Development||Requires backend development.||Requires frontend development.|
|UI flexibility||As the Wallet-API is a purely API-solution, you have full control over the frontend in your app.|
The Widget provides out-of-the-box screens for your endusers: login, create wallet, sign for a transaction, etc.
|User login||User login has to be provided by yourself. You are in full control of the authentication mechanism of your users.||The Venly-Widget offers an authentication mechanism for the wallet-users.|
Moreover, authentication of the user at Venly is mandatory, before any blockchain functionality can be triggered on the wallet of the user.
The authentication mechanism can be used as Identity provider (IdP) in your app.
|User||The user is not known at Venly. |
Every API-call performed is done in your name (
|The user is known/authenticated at Venly.|
Your app can retrieve the Profile of the user (email, firstname, etc.).
Every functionality triggered through your app (e.g. perform a transfer) will be done in-the-name-of the user.
|Wallet ownership||From Venly's perspective, the created wallets are owned by you (as we do not know the end-user).||The created wallets are owned by the end-user.|
|User interaction||(OPTIONALLY) If you wish, you can have full control over the created wallets. No user interaction is needed to access them.||User interaction is always needed to perform actions on the user's wallet. The user has to confirm every action by supplying a PIN code.|
|https://wallet.venly.io/||Users are not able to use the created wallets in the Venly Wallet interface (we do not know them).||Users are able to login into the Venly Wallet interface and manage the created wallets.|
|User support||Users have to contact you. You can contact Venly support with the necessary information (e.g. ||Users can contact Venly support immediately.|
|Custodial?||For Wallet-API, Venly is considered the "technology provider".|
As a client, you have two options.
OPTION 1: Custodial
You create custodial wallets (where you become the custodial and therefore need to comply with the necessary regulations). You have full control over the created wallets.
Example Use Case.
OPTION 2: Non-custodial
You create non-custodial wallets. In this case, you will require user interaction, whenever a user wants to perform an action on a wallet (e.g. they need to provide a PIN code).
Example Use Cases.
In this case, Venly is also not able to access the wallets: they are considered UNRECOVERABLE unless your user has an emergency signing method. If a user loses their PIN code, they can reset it using their emergency signing method.
|Venly is considered the custodial wallet provider. |
Venly conforms to all the Compliancy / AML / MiCa regulations (e.g. we will perform KYC for every user and monitor transactions).
We however have no control over the funds in the wallets. Funds will stay in the sole ownership of the user.
Updated about 1 month ago