Crea un punto de venta Bitcoin con BTCPay Server sin programar
Un comercio pequeño puede aceptar pagos desde un teléfono o una tableta sin desarrollar un checkout. Configura un punto de venta de BTCPay Server, comprueba productos y QR, limita el acceso del personal y aprende a verificar cada cobro antes de entregar.
Tienda, POS, checkout e invoice
La tienda de BTCPay contiene métodos de pago, configuración y permisos. El POS es una interfaz de cobro destinada a quien atiende al cliente. El checkout muestra las instrucciones de pago de una operación y BTCPay crea una invoice con su propio identificador.
Puedes mostrar un enlace público al POS para que el cliente elija un artículo, pero evita confundirlo con el acceso al panel de administración. El comprador debe poder pagar sin disponer de permisos para modificar wallets, cambiar precios o emitir devoluciones.
Este procedimiento complementa la creación de una factura BTCPay de prueba; aquí nos interesa la interfaz de venta repetida en un mostrador.
Una tienda conectada y un dispositivo controlado
Necesitas acceso legítimo a una tienda BTCPay operativa, sus métodos de pago configurados y un teléfono o tableta con navegador actualizado. Si solo vas a ensayar, utiliza productos ficticios, evita cobrar y no alteres la tienda de producción de otra persona.
Confirma si la tienda acepta Bitcoin on-chain, Lightning o ambos. Activar una opción de interfaz no crea un canal Lightning ni genera claves. En instalaciones con un nodo Lightning externo o LSP, el proveedor puede imponer condiciones y límites de cobro propios.
Configura la moneda en la que muestras precios al cliente y comprueba que BTCPay puede obtener la cotización necesaria. Para venta en euros, el importe solicitado en sats depende de la cotización bloqueada para esa invoice, no de una tabla de conversión fijada en un cartel.
Del catálogo a la pantalla de cobro
- PASO 1 · Entra en la tienda correcta: revisa nombre, moneda base y métodos de pago. No cambies una tienda real solo para que coincida con el tutorial.
- PASO 2 · Crea la aplicación: crea una app de tipo Point of Sale vinculada a esa tienda. Según la versión aparece en el menú Apps («Create a new app») o en la sección de Plugins de la barra lateral.
- PASO 3 · Elige la vista: Product list muestra solo los productos; Product list with cart añade un carrito para reunir varios artículos; Keypad es un teclado para importes variables. En documentación antigua aparecen como Static, Cart y Light. Puedes activar también propinas o un importe libre.
- PASO 4 · Prepara productos ficticios: añade por ejemplo «Café de práctica» a 3,00 EUR y «Cuaderno de práctica» a 8,00 EUR. No introduzcas datos personales del comprador en nombres de producto.
- PASO 5 · Comprueba el enlace: guarda los ajustes y abre View App o la opción equivalente en una ventana sin sesión administrativa. Deben aparecer nombre, precios y el estilo elegido.
- PASO 6 · Simula una venta: selecciona un producto y llega hasta el checkout. Confirma que el método, la moneda y el importe solicitado coinciden con tu intención.
- PASO 7 · Observa el estado: puedes cerrar el ensayo sin pagar. Una invoice generada no demuestra un ingreso. Si haces una prueba voluntaria con fondos propios de laboratorio, consulta su estado final antes de marcar la compra como abonada.
- PASO 8 · Cierra la sesión: elimina accesos administrativos del dispositivo compartido y anota cómo encontrará el personal el POS sin necesidad de credenciales sensibles. En una tableta, un acceso directo a la URL pública en la pantalla de inicio basta.
Precio fijo frente a importe introducido
Producto de 3,00 EUR
El empleado elige un producto definido previamente. Facilita repetibilidad y evita introducir el precio manualmente en cada venta.
Importe de 5,50 EUR
El empleado introduce una cifra. Requiere revisar la moneda y el importe antes de enseñar el QR: un cero adicional crea un error comercial.
QR para pagar
El cliente autoriza desde su wallet. Ni una captura de «Enviado» ni el cierre de la pantalla sustituyen comprobar la invoice.
En el mostrador, el empleado debe verificar el pago correspondiente a esa operación, no cualquier ingreso reciente que aparezca en el dashboard. La semejanza de importes entre dos ventas seguidas puede provocar confusiones.
Lightning y on-chain no comparten el mismo tiempo
En Lightning, una invoice correctamente liquidada suele mostrar un resultado en segundos, pero la conectividad del proveedor o una ruta fallida puede retrasar o impedir el cobro. En on-chain, detectar una transacción en mempool no equivale a alcanzar las confirmaciones elegidas por la tienda.
Utiliza el estado completo de la invoice y la política de entrega según el tipo de producto. No existe un número de confirmaciones universal: el riesgo de un café no es el de un equipo caro enviado por mensajería.
Si la factura caduca y el comprador dice que pagó después, consulta el detalle antes de generar otra venta: la expiración del checkout no revierte un pago enviado. Consulta cómo definir una política de cobro y entrega.
Diseña reglas simples para evitar incidencias
🐥 ¿La tableta se desconecta tras mostrar el QR?
No declares el pago fallido solo porque la pantalla quedó sin conexión. Recupera la invoice y consulta el estado en BTCPay antes de emitir otra venta.
🐥 ¿El cliente enseña un comprobante pero la invoice no figura Settled?
Distingue si la política permite procesar antes de confirmaciones o si debes esperar. Comprueba el pago real asociado a esa factura, no únicamente la captura.
🐥 ¿El comercio permite importe libre?
Una cifra incorrecta puede dar lugar a sobrepagos o pagos insuficientes. Muestra de forma visible importe y moneda y confirma con el cliente antes de generar el QR.
🐥 ¿El personal necesita acceso para devolver fondos?
No concedas permisos de servidor para facilitar una devolución. Define un rol y autorización propios para reembolsos y registra el justificante, como en la guía de devoluciones Bitcoin.
Qué revisar sin convertir el POS en una caja opaca
Revisa facturas creadas, pagos realmente liquidados, invoices abiertas, pagos parciales o tardíos y devoluciones. Conserva la referencia comercial de cada venta cuando sea necesario. En un comercio con muchos pedidos, la conciliación automatizada debe asegurar que un aviso repetido no registre dos ventas.
El POS puede ser público sin que deban serlo sus claves de API, el panel de administración, las copias de recuperación o la información de clientes. Si el dispositivo se pierde, revoca sesiones o credenciales que correspondan y comprueba la configuración de la tienda.
La ausencia de comisiones de un intermediario central no significa que usar Bitcoin no tenga costes: existen comisiones de red, liquidez y mantenimiento de servicios según tu arquitectura.
La herramienta debe ajustarse al cobro
Un botón de pago o una invoice manual puede bastar cuando cobras una vez por semana. El POS tiene sentido cuando necesitas productos repetibles, personal de mostrador, precios visibles o importes variables. No añadas una aplicación más si solo complica los permisos.
Para recibir donaciones o propinas por importe elegido, la vista de teclado o la opción de importe libre del POS pueden servir como formulario sencillo. La URL pública del POS puede enlazarse desde un dominio de marca, pero la dirección interna del servidor, los permisos y el certificado HTTPS siguen requiriendo una configuración correcta.
Cuando el POS genere varias ventas, aprende a conciliar cada cobro con su pedido.
¿Puedes atender una venta sin fiarte del QR?
- Tienda: confirmo que el POS pertenece a la tienda y wallet correctas.
- Catálogo: precios, moneda y productos ficticios son los previstos.
- Checkout: reconozco la invoice creada, su ID y método de pago.
- Seguridad: el dispositivo público no dispone de acceso administrativo.
- Cobro: sé qué estado verificar antes de entregar un producto.
Un mostrador claro y verificable
Has preparado una interfaz de cobro sin programar y sin asumir que enseñar un QR demuestra el pago. La decisión de entrega sigue dependiendo del estado de la factura y del riesgo aceptado.
Verifica los menús en tu versión
Siguiente práctica: ensaya pagos parciales y tardíos en BTCPay sin arriesgar pedidos.

Hay más piezas que encajan con esta
Continúa por contenidos relacionados con el tema que acabas de estudiar.









