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.