Estoy programando el back-end para una solución de comercio electrónico, la API de Bitcoind me brinda una forma de enviar dinero a una dirección de bitcoin:sendfrom <fromaccount> <tobitcoinaddress> <amount>
Si entendí bien, esto transferirá dinero de una cuenta a una dirección, pero no veo ninguna forma de enviar de una dirección a otra. No implementé cuentas en mi sistema backend y no quiero hacerlo porque es una capa adicional de complejidad con la que no quiero lidiar en este momento.
Entonces, supongo que esto tomará dinero de cualquier dirección o direcciones asociadas a la cuenta y las enviará a la dirección de bitcoin proporcionada. ¿Alguna forma de hacer lo que quiero hacer?
Para encontrar los resultados de transacciones que puede gastar
listunspent 0 99999999999 "[\"addressYouWantToSpend\"]"
Luego crea el tx
createrawtransaction "[{\"txid\":\"txIdToSpend\",\"vout\":n}]" "{\"destinationAddress\":amountToSend, \"changeAddress\":changeAmount}"
Luego firme el tx
signrawtransaction <hexStringProvidedBycreaterawtransaction>
Luego publica el tx
sendrawtransaction <hexStringProvidedBysignrawtransaction>
Tienes algunas opciones aquí. Puede crear una transacción sin procesar como se discutió en otra respuesta, pero esta es probablemente la más difícil y la más fácil de hacer mal (¡asegúrese de que sus entradas y salidas coincidan!)
Otra opción sería crear un mapeo uno a uno de direcciones a cuentas.
También puede jugar juegos con el move
comando moviendo monedas de una cuenta a otra y luego enviarlas desde esa cuenta, pero esto también es complejo.
CASHOUT
y move
mover los bitcoins de la dirección del pedido a cualquiera de las CASHOUT
direcciones tan pronto como envíe el producto. Luego, agregaría paytxfee=<amt>
para bitcoin.conf
saber de antemano cuántos BTC voy a pagar y contar con esas tarifas cuando cobro a una dirección fuera del servidor, pero no estoy seguro de si eso funcionará... .
Cornezuelo del Centeno
Óscar Guindzberg
Óscar Guindzberg