I want to create a simple way to accepting bitcoins on my own, using Electrum. I don't except big volume. I suppose, I'd have at most a handful of incoming payments in the beginning.

That is, I generate an address, a new one for each checkout where Bitcoin is selected as a payment method. And then I'll need to watch an address, via API of Electrum, for an incoming payment of a certain amount. The 1st confirmation, at least, which will have to arrive within, I suppose, 1 hour.

How can it be implemented? I don't need the code, but a high level explanation: what API to use, potential caveats and suggestions in general.


I'm aware of this - https://electrum.readthedocs.io/en/latest/merchant.html , but it won't work for me. I'm a developer, therefore I can create a simpler solution and which I also could customise however I like.

2 Answers 2


I have worked with Electrum 3.3.8 daemon through JSONRPC interface. A vary simple explanation how it woks in my case:

  1. I send to Electrum "addrequest" command which contains also amount of BTC, memo, timeout.
  2. Get the address of payment in answer from Electrum and display it for payer person.
  3. Store address in database for further checking.
  4. Periodically checks (by cronjob) statuses of addresses by "listrequests" command.

If status is "Paid" and there are more than 1 confirmations, then payment accepted.

  • listrequests isn't it, because I won't request a payment from someone, but I'll instead give an address to him. Therefore listrequests won't work Aug 7, 2020 at 5:19
  • When you send "addrequest" comand, Electrum provide to you an address and Electrum starts to monitor this address.
    – Vlad
    Aug 7, 2020 at 8:20
  • Ты делал через addrequest, но я делаю по-другому. Что я и описал. addrequest мне не подходит Aug 7, 2020 at 8:40

The easiest way to accomplish this would be to use a hosted service like Coinbase Commerce and leverage their API. Commerce generates a wallet that only you control and then uses your public keys to generate and monitor addresses on your behalf. Every customer is given a unique address and the service monitors the network for payments to that address. When a payment is detected, it sends a webhook notifying you of the unconfirmed transaction and for each subsequent confirmation.

  • Are you unable to read? Aug 12, 2020 at 8:36

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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