aceptar pagos de bitcoin para pedidos sin software de terceros

He estado buscando una alternativa de código abierto a la API de recepción de pagos de blockchain.info ( https://blockchain.info/api/api_receive ). Quiero ejecutar bitcoind en mi propio servidor y que los pagos se manejen en mi propia base de datos.

¿Existe algún proyecto que se mantenga actualizado con la versión actual de Bitcoin?

Buscar aquí, github y Google no me ha devuelto resultados.

¿Cuál es tu lenguaje de programación preferido? Puede echar un vistazo a BitcoinLib,bitcoind que está actualizado y es totalmente compatible con blockchain.infola API RPC de ambos. La respuesta de David le dará una idea de cómo empezar.

Respuestas (3)

No creo que necesite una biblioteca de terceros si tiene un nivel razonable de experiencia en programación. (Si no lo hace, probablemente no debería estar manejando dinero directamente).

Estos son los pasos de la página Blockchain.info (BC.i) recreada para Bitcoin Core.

Obtenga una dirección de recepción

Utilice el getnewaddressRPC. El resultado de JSON-RPC será una cadena con la dirección.

Obtenga una devolución de llamada cuando una dirección reciba un pago

Use el -walletnotifyinterruptor de línea de comando bitcoind para ejecutar un programa cada vez que se reciba, envíe o confirme una transacción de billetera. Su programa puede usar los siguientes comandos:

  • gettransactionpara obtener detalles sobre la transacción, incluido todo lo que BC.i le habría enviado y más. (Consulte el enlace para ver un ejemplo). Cuando Bitcoin Core ejecuta el comando walletnotify, puede pasar un argumento con el TXID, por lo que ejecutaríagettransaction <txid>
  • Algo así como curlenviar un HTTP GET a su URL de devolución de llamada con los detalles que necesite

Eso es. Siempre que pueda escribir un script que pueda analizar JSON, puede hacer todo lo que hace BC.i con solo unas pocas líneas de código. Probablemente también sea por eso que no ve ningún código en GitHub: es demasiado simple para hacer un proyecto.

Antes de comenzar, recomiendo leer la página de manejo de dinero adecuado de Bitcoin Wiki para aprender a manejar valores de bitcoin de alta precisión. Además, si este es su primer programa de manejo de dinero, recuerde lo mucho que está en juego cuando guarda dinero. A los hackers les encanta robar bitcoins.

Las bibliotecas sirven para muchos propósitos, y hay buenas razones para usarlas en lugar de construir todo desde cero. Estoy buscando algo que haya sido probado durante al menos un año. Podría construirlo yo mismo, pero prefiero comenzar mi próximo proyecto usando un código que tenga más de 0 días y que haya sido probado más de 0 veces. Si es cierto que esto no existe y todos usan servicios de terceros (blockchain.info/bitpay/coinbase) para el procesamiento comercial, entonces, ¿cuál es el punto de usar Bitcoin en primer lugar?
David Harding no te estaba diciendo que crearas todo desde cero, te estaba diciendo cómo integrar tu aplicación con bitcoind con unas pocas líneas de código. Me parece bastante razonable, excepto que debe usar una billetera determinista jerárquica para que solo necesite una copia de seguridad.

El Mycelium Gear es probablemente la forma más práctica de hacerlo. Si bien técnicamente es un tercero, el dinero no se enruta a través de ellos y, por lo tanto, no hay KYC/AML, censura ni comisión. Mycelium Gear simplemente le notifica sobre los pagos entrantes en función de su billetera HD xpubkey.

Alternativamente, puede configurar su software de código abierto usted mismo.

Es poco probable que el OP todavía esté esperando la respuesta, pero la pregunta sigue siendo válida y seis años después, la comunidad tiene algunas buenas respuestas.

Procesadores de pago de código abierto y autohospedados para Bitcoin: