¿Cómo puedo aceptar bitcoins en mi sitio web?

Tengo una tienda en línea y me gustaría comenzar a aceptar bitcoins. ¿Cómo puedo hacer esto?

Hay muchos servicios/soluciones particulares mencionados aquí. ¿Alguien quiere sintetizar un montón de ellos en una guía sobre cómo implementarlos? Eso sería ideal ya que preferiría no "elegir" un servicio sobre otros. Por lo tanto, la respuesta ideal debería comenzar con "Dependerá de su nivel de experiencia tecnológica y su paquete de software existente:" y luego descomponerlo comenzando con 'aplicar una dirección' y terminando con un código propio.
Hecho. Espero que mi respuesta sea de su agrado.
Dirijo una pequeña empresa y me gustaría comenzar a aceptar bitcoins, pero no soy un experto en informática, ¿puedes ponerlo en una conversación de persona común?
Esta información está disponible a través de una simple búsqueda en Google e incluso en Bitcoin.org, el sitio web oficial de Bitcoin.
A partir de 2020 (y lo ha sido durante algunos años), la forma más sencilla es usar btcpayserver.org .

Respuestas (6)

Hay varias formas de aceptar Bitcoin en una interfaz web. Al revisar estas opciones, tenga en cuenta que Bitcoin aún es una tecnología joven y muchas de estas opciones aún no son lo que llamaría "amigable". Dicho esto, tiene bastantes opciones dependiendo de su nivel de experiencia y requisitos técnicos:

  • Usa un servicio como:
  • Use una interfaz de carrito de compras existente
    • Existen complementos para Ubercart, Magento y muchas otras plataformas populares de comercio electrónico. Si está buscando modificar un sitio existente que se ejecuta en una de estas plataformas, esta puede ser su mejor opción. Si aún tiene que iniciar un sitio y no desea escribir el código usted mismo, esta puede ser su mejor opción, ya que puede elegir su plataforma antes de la implementación.
  • Enrolle su propio uso de bibliotecas existentes
    • Esta es su mejor apuesta si está utilizando una plataforma que actualmente no es compatible o si tiene requisitos de integración difíciles que no pueden satisfacer las plataformas de comercio electrónico existentes como Magento o Ubercart.
    • Idiomas:
  • Enrolla el tuyo usando la API JSON directamente
    • Esto solo es necesario si no está utilizando uno de la media docena de idiomas que ya tienen bibliotecas preescritas para interactuar con bitcoind. La lista de idiomas puede ser corta, pero se han cubierto todos los principales estándares de la industria, por lo que es poco probable que tenga que ir tan lejos.
Antes de los gritos de plagio: todos los datos aquí provienen de otras respuestas, incluida mi propia respuesta original. Según la solicitud del autor de la pregunta, he compilado los puntos más finos de cada respuesta en una respuesta amplia que es apropiada para una variedad más amplia de escenarios que cualquiera de las respuestas individuales por sí sola.
Desafortunadamente, la recompensa se agotó antes de que se publicara su respuesta, pero definitivamente aceptaré esta. ¡Buen trabajo!
Sí, no estaba realmente en esto por la recompensa de todos modos. Supongo que la pérdida de 100 repeticiones es lo que obtengo por pasar un fin de semana en Disneyland en lugar de en StackExchange;)
Bit-pay es diferente de los otros servicios porque permite que los comerciantes reciban pagos en USD para que no tengan que preocuparse por la fluctuación de precios y la conversión de dólares. El sitio web acepta bitcoins, pero los propietarios nunca tienen que administrarlos. Bit-pay también ofrece varios complementos de carrito de compras como WHMCS, OpenCart, Zen Cart, Magento, etc.

Puede utilizar servicios como BitcoinPayFlow o Bit-Pay .

Estoy trabajando en un módulo de pago para integrar BitcoinPayFlow con OpenCart. Mire el proyecto aquí ; debería estar listo en un par de semanas.

Editar: Bit-Pay acaba de lanzar un módulo de pago OpenCart. Ver aquí _

Desaconsejaría una solución que dependa de que otro sitio se mantenga a flote. Si el suyo es más que un sitio web informal, valdrá la pena el esfuerzo de tener una solución de bitcoin que se ejecute en su propio servidor.
Estoy de acuerdo con lathomas64. Creo que es una mala idea recomendar soluciones de terceros como la respuesta aceptada. Hemos visto una tasa de falla muy alta con soluciones de terceros, y bitcoind le brinda la funcionalidad que necesita.
Estoy de acuerdo y en desacuerdo. Ambas soluciones (JSON RPC y procesadores de pago de terceros) tienen su lugar. La razón por la que sugerí BitcoinPayFlow y Bit-Pay es porque son fáciles de configurar ya que no requieren mucho conocimiento técnico. BitcoinPayFlow es bueno porque reenvía todos los pagos tan pronto como se confirman, por lo que a menudo no tienen mucho saldo.

Definitivamente deberías revisar el servicio https://bitcoinnotify.com/ . Funcionan notablemente diferente a las soluciones existentes:

  1. Usted les proporciona una lista de btcaddresses (¡de su propia billetera!)
  2. Supervisan todas las transacciones en la red.
  3. Si observan una transacción a una de tus direcciones, obtienes un POST de su sitio con dirección, monto, marca de tiempo, número de confirmaciones, ...
  4. Puede especificar cuántas confirmaciones se necesitan antes de recibir la notificación. También son posibles múltiples notificaciones, por ejemplo, en 1 y en 6 confirmaciones

Para implementar esto, debe realizar un seguimiento por su parte de qué pedido está vinculado a qué dirección btc. Cuando se confirma un pago, puede usar la dirección nuevamente para el próximo pedido

ventajas:

  • No hay billetera externa involucrada: todos los pagos van DIRECTAMENTE a su propia billetera, por lo que no hay forma de que puedan ejecutar con su dinero o ser pirateados o robados, etc.
  • Puede mantener su billetera en cualquier sistema separado dedicado y altamente seguro, sin necesidad de tenerlo en su sitio web o cerca de él
  • Si desea correr el riesgo de no esperar las confirmaciones, recibe la notificación segundos después de que el cliente haya emitido la transacción (al menos esa es mi experiencia personal)

Espero que pronto aparezcan servicios similares, para que pueda suscribirse en varios sitios para recibir notificaciones. Así que ya no hay un único punto de falla.

Votó a favor por el potencial de tener una billetera fuera del sitio.
También debe tener en cuenta los riesgos, por ejemplo, que bitcoinnotify se colude con uno de sus clientes (o se convierte en uno de sus clientes) y le notifica de manera fraudulenta que envíe algo que en realidad no ha sido pagado. Con suerte, eso se informaría rápidamente si sucediera, y las personas que los usan podrían cambiar. Pero también siempre existe el riesgo de "él dijo - ella dijo", lamentablemente.
La combinación ideal sería algo así como una versión de código abierto de bitcoinnotify que podría ejecutar usted mismo, preferiblemente con una clave privada conocida solo por el servicio utilizado para firmar notificaciones en el sitio web para validar su autenticidad.

Eche un vistazo a la API bitcoind json .

Deberá ejecutar los servicios de bitcoind en una computadora accesible desde su sitio web. La computadora en la que ejecuta el servicio debe ser muy segura, ya que contiene su billetera. El desarrollo está en marcha para permitirle tener el archivo de la billetera ubicado en otro lugar.

Para mayor seguridad, puede guardar una copia del archivo de la billetera del servidor en su computadora y transferir fondos periódicamente a una cuenta más segura.

También hay personas que brindan este servicio. Sin embargo, esto no es tan seguro y debe revisar cuidadosamente las opciones antes de confiar en uno de estos servicios. Sin embargo, estos pueden ser una alternativa fácil si puede aceptar los riesgos involucrados.

También tenga en cuenta que necesitará un VPS o similar. No funcionará en webhost.
Creo que quiere decir host compartido, y sí, no debe ejecutar un bitcoind en ningún servidor en el que no tenga un control completo de la seguridad.
Siempre puede ejecutar bitcoind en una máquina separada de su servidor web y dado que la API JSON es compatible con SSL, el riesgo de seguridad adicional es insignificante. Por supuesto, eso también duplica los posibles puntos de falla, pero si no tiene otra opción, al menos resolverá el problema.

Hay una serie de interfaces de carrito de compras disponibles actualmente, aunque una buena cantidad de ellas se basó en la API MyBitcoin ahora desaparecida. También es bastante fácil integrar su propio código con la API de JSON, ya que hay bibliotecas disponibles en los lenguajes más comunes, como ASP.NET/C# , PHP , Python y muchos otros . Se recomienda VPS o alojamiento dedicado, ya que el cliente de bitcoin puede residir en el propio servidor, pero como la API JSON de bitcoin es compatible con SSL a partir de la versión 0.3.14, es razonablemente seguro que el cliente de bitcoin resida en otro sistema y permita que su aplicación web conectarse a él de forma remota.

También puede echar un vistazo al servicio comercial de blockonomics . Le permite aceptar bitcoins directamente en su billetera y es el único servicio en este momento que maneja los problemas de límite de brecha por sí mismo .