We are connecting to our nodes via our own API, and Multichain PHP library - We have a few thousand addresses running, each connected to a user that is matched on our own DB. This is fine so far as we are managing user balances. Since this will include tens of thousands of customers, I am hoping Multichain will support that. But for users that want to use a Lite Wallet...
Just wanted to check if this is the correct way to create a Lite Wallet using our API:
1. In the app, connect to one of our nodes, send command to createkeypairs to get the private, public and address (we will store that as a hash, combined with a name and password, and store locally on the device. In the app, we will ask the user to back the data up just in case they need to import the privkey again.
2. On entry, the app is connected to one of our nodes, or user can choose their own full node to connect to.
3. The app api will import the address (not privkey) to that connected node, and then send commands (getaddressbalances, listaddresstransactions, gettransaction etc) to get info to show in the Lite Wallet
4. When sending, createrawtransaction, signrawtransaction, sendrawtransaction
5. When trading with other assets, create offers via createrawexchange etc..and other users can see what is being offered and accept.
Does the above seem ok?..
If a user connects to another node, then our api has to check if address has been imported and then import if not there,... Is there anything else we need to think about?
We are aiming to produce something similar to the Waveswallet.io - we use AngularJS 4 for web, and Fusetools for Mobile. Chain permissions are open except for admin and mining and there is a native currency.
I am not a programmer, but i have to guide my PHP and API coders on the best approach and they are fairly new to Multichain. Does the above sound about right?..