Usando o DebitPay para pagamentos em criptomoedas e fugindo da centralização

Fugindo da centralização dos serviços de pagamento como o BitPay .

Apesar de não gostar nem um pouco quando sou forçado a usar o BitPay, eu sei que ele é uma boa tentativa de serviço para popularizar o pagamento com criptomoedas. O problema, na minha opinião é que ele acaba nos forçando a usar alguma carteira que tenha o serviço implementado, pois, hoje, ele simplesmente não fornece mais na invoice, ou seja, a página de cobrança uma forma de conseguir facilmente o endereço da carteira para o qual devemos enviar o valor do pagamento.

Mas, sempre, há alguém que perde um tempo para documentação e nos fornece algum hack que possa nos ajudar nisto. E o DebitPay é isto.

Você pode usar o serviço online deles ou caso não confie em enviar o seu rico dinheirinho para outra pessoa, pode sem problemas rodar o DebitPay no seu computador ou servidor ( vou tentar fazer um docker dele daqui um tempinho, ai você pode até rodá-lo como um container ).

Como rodar o DebitPay na sua máquina

Rodar o DebitPay na sua máquina é algo bem fácil. Ele é feito em node, portanto, o processo é bem rápido e nem um pouco traumático.

Primeiro é só fazer o clone do repositório deles na sua máquina.

$ git clone https://github.com/alexk111/DeBitpay.git

Caso não tenha domínio do git você pode efetuar o downloa do DebitPay em formato zip.

Depois é entrar no diretório do zip ou do clone que você fez do repositório e instalar as dependências.

$ npm install 

E finalmente, gerar o aplicativo, com o build .

$ npm build

Feito isto é só ir no diretório dist e abrir o arquivo index.html e utilizar sem problemas.

Como o próprio autor do DebitPay fala ele é um wrapper que ainda pode ser sem problemas implementado em outras linguagens.

Ele inclusive deixa dois exemplos, um no curl e outro em python .

Utilizando o cURL

curl -X GET https://bitpay.com/i/$BITPAYINVOICEID -H 'accept: application/payment-request'

Utilizando o Python

from requests import get
url = 'https://bitpay.com/i/BITPAYINVOICEID'
resp = get(url, headers={'Accept' : 'application/payment-request'}).json()
print(resp)

Achei interessante pois esta semana eu precisei do serviço e o utilizei novamente.

E acredito que será legal para muitas pessoas que não usam carteiras suportadas pelo pessoal do BitPay.