merchant.py is a daemon that manages payments for a web server. It creates Bitcoin addresses using a master public key (so you do not leave your private keys on the server), detects when payments are received and notifies your web application. The workflow goes like this: - the server sends a request to the daemon via POST. the request contains an amount to be paid, a number of confirmations, and an expiration period in hours. - the daemon answers with a Bitcoin address, where the customer needs to send the coins. - later, the daemon will send a POST to the webserver, to notify that the payment has been received OR that the request has expired Since addresses are generated using an Electrum master public key, it is possible to visualize payments in the Electrum client; you will, however, need to manually adjust your "gap limit". In order to use this script, first edit and rename merchant.conf.template to merchant.conf to launch it, type: > python merchant.py In another terminal, you may send a request from the command line (it will send the request to the running daemon via http). For example, here is a request for 0.1 bitcoins, that requires two confirmations, and expires in 120 minutes: > python merchant.py request 0.1 2 120