Building semi-custodial wallet
Before integrating the Transaction APIs, please proceed with the following steps.
- Sign Up
- Generating Wallet
- Issuing API Tokens
- Register API Callable IP
Generally, semi-custodial wallets are built as follows. Other features can be implemented in various ways depending on the type of service.
Building a Child Address System
Generating Child Addresses
Generates addresses to be issued to end users. Generally, one child address is issued to each end user. Child addresses are generated by calling respective APIs, and issued child addresses can be checked from the console.
Managing the Balance of Child Addresses
You can access the balance of each child address by calling the Access Address Balance API.
Building a Deposit System
Deposit Occurrence Confirmation
When an outside asset is deposited to Octetโs address, the transaction data will be sent to the clientโs server from Octetโs server as an HTTP (post) request. When the client has built a system to receive this, the system can check deposits occurring in real-time without continuous polling.
Building a Withdrawal System
Withdrawal from the child address
Withdraws the assets stored in the child address to the outside. You can request a withdrawal by calling the Request Child Address Withdrawal API.
Withdraw from the main address
Withdraws the assets stored in the main address to the outside. You can request a withdrawal by calling the Request Withdrawal API or from the console.
Setting Up Withdrawal Approval
All withdrawals proceed with administrator approval by default. However, it can be disabled for withdrawals using API, which makes withdrawal proceed when it is requested.
- The administrator approval can be disabled on API withdrawal - [Wallet Settings] - [API Withdrawal Approval].
- Console withdrawal - Administrator approval is required.
Withdrawal Completion Confirmation
When the main address asset is withdrawn, the transaction data will be sent to the clientโs server from Octetโs server as an HTTP (post) request. When the client has built a system to receive this, it can check the withdrawal completion in real-time without continuous polling.
Updated about 1 year ago