Este guia explica como configurar pagamentos Bitcoin no seu site usando Electrum. Usaremos solicitações de pagamento assinadas por SSL, seguindo o BIP-70 padrão. Esta documentação é atual para Electrum 4.0 e posterior.
Antes de começar, certifique-se de que tem:
- Um certificado SSL válido (assinado pela CA, como o certificado gratuito LetsEncrypt).
- A versão de desenvolvimento do Electrum instalada.
Não se esqueça de executar o comando de atualização do submódulo durante a instalação.
Configure seu certificado SSL na Electrum
Para ativar ligações seguras, é necessário adicionar o seu certificado SSL à Electrum. Use estes comandos no seu terminal:
electrum -o setconfig ssl_keyfile /path/to/ssl/privkey.pem
electrum -o setconfig ssl_certfile /path/to/ssl/fullchain.pem
Para instruções mais detalhadas sobre como adicionar SSL à Electrum, verifique o Configurando SSL para Electrum.
Criar e utilizar a carteira de comerciante
Configure uma carteira segura para as suas transacções comerciais. Este processo ajuda a proteger a sua moeda criptográfica, mesmo que o seu servidor de comerciante seja comprometido.
- Criar uma nova carteira
Num computador seguro, crie uma nova carteira:
electrum create
É preferível utilizar uma carteira separada para a sua empresa e não para a sua carteira pessoal.
- Exportar a chave pública mestre
Ainda no seu computador seguro, exporte a chave pública mestra (xpub):
electrum getmpk -w .electrum/wallets/your-wallet
- Configurar o servidor do comerciante
Na máquina do servidor, restaure a carteira utilizando a Master Public Key exportada:
electrum restore xpub...............................................
Substituir xpub...
com a sua chave pública mestra atual
- Configurar definições do servidor.
electrum -o setconfig payserver_address yourdomain.com:80
Substituir yourdomain.com
com o seu domínio atual.
Iniciando o Electrum Daemon
Depois de configurar a sua carteira só de leitura, precisa de executar a Electrum como um serviço em segundo plano. Aqui está como:
- Iniciar o Daemon
Execute este comando para iniciar Electrum como um daemon:
electrum daemon -d
Isso inicia Electrum no modo daemon, permitindo que ele seja executado em segundo plano.
- Carregar a sua carteira
Em seguida, carregue a sua carteira no daemon em execução:
electrum load_wallet
Este comando torna a sua carteira ativa e pronta a ser utilizada.
Parar o Daemon
Se você precisar parar o daemon Electrum em qualquer ponto, use este comando:
electrum stop
Isto irá desligar com segurança o Electrum daemon.
Criar um pedido de pagamento assinado
electrum add_request 0.5 -m "test"
{
"URI": "bitcoin:bc1q3hr4xnta7s4jgeymjhs498ygqa53qkjxqhlx3z?amount=0.5&message=test&time=1589115653&exp=3600",
"address": "bc1q3hr4xnta7s4jgeymjhs498ygqa53qkjxqhlx3z",
"amount": 50000000,
"amount_BTC": "0.5",
"bip70_url": "https://yourdomain.com:80/bip70/bc1qyr5xx5jkue3k72sldm5xa0taqs3n2achupymz8.bip70",
"exp": 3600,
"id": "63822b69013",
"memo": "test",
"status": 0,
"status_str": "Expires in about 1 hour",
"time": 1589115653,
"type": 0,
"view_url": "https://yourdomain.com:80/r/pay?id=bc1q3hr4xnta7s4jgeymjhs498ygqa53qkjxqhlx3z"
}
Eis um resumo das principais informações:
URI
: Um URI Bitcoin que inclui o montante, a mensagem, o carimbo de data/hora e a expiração.address
: O endereço Bitcoin para o pagamento.amount
: O montante solicitado em satoshis.amount_BTC
: O montante solicitado em BTC.bip70_url
: O URL do pedido BIP70 assinado.view_url
: O URL de uma página Web que apresenta o pedido.
A saída do comando inclui dois URLs importantes:
bip70_url
: Este é o URL do pedido BIP70 assinado.view_url
: Este é o URL de uma página Web que apresenta os pormenores do pedido.
Para ver a sua lista atual de pedidos, utilize o list_requests
comando.
Para remover todos os pedidos da lista, utilize a opção clear_requests
comando.
Abrir a página de pedido de pagamento no seu browser
Depois de criar um pedido de pagamento, pode visualizá-lo num navegador Web.

Eis como utilizar a página de pedido de pagamento:
- Abrir o
view_url
a partir do resultado do pedido de pagamento no seu navegador Web. - A página apresentará os pormenores do pedido de pagamento, incluindo:
- Um URI Bitcoin que pode ser aberto com uma carteira.
- Um código QR que pode ser digitalizado para pagamento.
- O tempo restante até à expiração do pedido.
- Para efetuar um pagamento:
- Utilize uma carteira Bitcoin para abrir o URI Bitcoin fornecido.
- Digitalizar o código QR com uma carteira móvel.
- A página utiliza websockets para atualizar em tempo real. Quando o pagamento for recebido, a página será automaticamente actualizada para mostrar o estado atualizado.

O aspeto efetivo da página pode variar, mas conterá as informações essenciais necessárias para concluir o pagamento.
Importante: verifique sempre os dados de pagamento antes de enviar quaisquer fundos.
Pagamentos relâmpago
Configurar o Lightning
Para utilizar o Lightning, é necessário configurar chaves Lightning na sua carteira. Siga estes passos:
- Parar o daemon Electrum:
electrum stop
- Inicializar as chaves do Lightning:
electrum -o init_lightning
- Reiniciar o daemon:
electrum daemon -d
Pode adicionar chaves Lightning a uma carteira apenas de observação. Esta carteira não poderá gastar moedas na cadeia, mas pode efetuar transacções Lightning.
Abrir um canal
Depois de configurar o Lightning, é necessário abrir um canal:
electrum open_channel <node_id> <amount>
Para verificar se o canal está pronto a ser utilizado:
electrum list_channels
Tenha em atenção que o seu novo canal não terá capacidade de entrada no início, pelo que não poderá receber pagamentos imediatamente. Se precisar de receber imediatamente, considere fazer uma troca submarina dos fundos do seu canal.
Criando uma solicitação de pagamento do Lightning
Para criar um pedido de pagamento do Lightning:
electrum add_lightning_request 0.0001 -m "test"
Este comando cria um pedido de 0,0001 BTC com a mensagem "test".