1

I am new to bitcoin development. I am going through documentation and researching to build below in the webwallet solution

  1. Create a HD Wallet which can assign addresses to subscribed users.
  2. BackUp / Restore HD wallet on a different machine for managing any risks.
  3. Allow user to withdraw funds as needed by processing a Withdrawal transaction if the user is sufficient funds in his account.
4
  • Could you provide a broader context? What is the target use case? There is hundreds of web wallets on the market, including some open source solutions. Jul 8 at 14:34
  • Exploring to develop some functionality in an existing solution where Crypto can be used as mode of payment by consumers for exchange for services or exchange it for FIAT.
    – spk
    Jul 8 at 21:34
  • I would be interested in knowing existing open source solutions, it would be great if you could point me to any. Thanks
    – spk
    Jul 8 at 21:35
  • Lightning Network will be better for payments. Btcpayserver is an open source payment processor that can be used for integrating bitcoin payments in websites. Resources related to LND: docs.lightning.engineering/community-resources/resource-list
    – Prayank
    Jul 9 at 9:43
0

You can use Bitcoin Core JSON-RPC API with any language that is used for web development. There are two ways to do this:

Libraries

There are few libraries that will help you develop web applications for Bitcoin. Example: The best JavaScript libraries supporting Bitcoin Core?

OR

  1. Experiment with Bitcoin Core RPC related to wallets on testnet. Once you understand how things work, run bitcoind with below bitcoin.conf:

    testnet=1
    server=1
    
    test.rpcport=PORT
    rpcuser=USERNAME
    rpcpassword=PASSWORD
    
  2. Run Postman (There is also Postwoman but I have not tried it)

  3. Create a request with URL: https://127.0.0.1:RPC_PORT/

  4. Select 'basic auth' and enter RPC credentials

  5. Body(raw):

    {"jsonrpc": "1.0", "id": "curltest", "method": "createwallet", "params": ["DW1",false,false,"",true,true]}
    
  6. This will create a descriptor wallet with name 'DW' if you send the request. For using it in your web application, you can click on </> code symbol and copy the code for one of the languages:

postman-bitcoin-core

Few things related to security: https://github.com/bitcoin/bitcoin/blob/master/doc/JSON-RPC-interface.md

There can be more ways or better ways to achieve the same. I am not a web developer. Just trying to help.

2
  • Thank you for providing the details to point me in the right direction. Do you know if there is any documentation that I can refer to for setting up a HD Wallet for this purpose, and the processes for a wallet backup and wallet restore.
    – spk
    Jul 8 at 13:30
  • There is RPC command for almost everything. Create HD wallet: createwallet, Backup wallet: backupwallet. Basic steps for recovery: bitcoin.stackexchange.com/questions/102904/…
    – Prayank
    Jul 8 at 13:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.