Publié à l'origine sur Substack le 14 avril 2022. Mis à jour ici le 28 décembre 2024.
Cas d'utilisation de LNBits dans un petit restaurant d'hôtel comme processeur de paiement Bitcoin
Comment utiliser cette merveilleuse suite d'applications LNbits avec votre nœud Lightning en tant que petit commerçant.
Pour en savoir plus sur LNbits, consultez ce guide d'introduction rapide.
LNBits pourrait être utilisé comme processeur de paiement Bitcoin LN. Oui, je sais, certains d'entre vous diront "mais utilisez BTCPay Server...etc".
Cette fois, essayons d'utiliser davantage d'outils disponibles pour les commerçants. Pour certains cas spécifiques, LNbits peut très bien s'adapter et étendre l'utilisation avec ses extensions. BTCPay est bon, il fait un excellent travail, mais d'un autre côté, LNbits offre plus d'outils et d'options pour un commerçant.
Description du scénario de cas d'utilisation
Prenons donc un scénario de cas d'utilisation : un petit hôtel et un restaurant ou un café-bar, avec également une boutique en ligne pour les commandes en ligne, disons la combinaison courante de plugins Wordpress + Woocommerce.
Avec l'extension LNbits Market, vous pouvez créer votre propre boutique en ligne, sans avoir besoin d'une installation Wordpress.
Un commerçant souhaite :
- recevoir des paiements en bitcoins, à partir des commandes en ligne de son site Web, sans intermédiaire et avec des frais très bas
- les clients peuvent également payer avec Bitcoin via le réseau Lightning dans le restaurant, de manière simple et directement au serveur. Les clients devraient également pouvoir donner des pourboires au serveur, dans leur propre portefeuille et également être réglés immédiatement.
- avoir un TPoS simple, où les employés mettent simplement la valeur dans leur monnaie locale et créent la facture LN à payer.
- avoir une boutique en libre-service simple hors ligne, par exemple pendant la nuit, afin que les clients puissent payer et emporter certains articles (bière, vin, sandwichs, snacks). L'utilisation de l'extension LNURLVend pourrait être une bonne solution.
- créez un type de « points de fidélité » pour les clients réguliers et restituez-leur des sats en utilisant un système de bons en utilisant l'extension LNURLw.
- les clients peuvent également laisser des pourboires avec des sats dans un « pot à pourboires » ou LNURL-pay
- les clients peuvent écouter de belles chansons dans le bar-salon, mais en payant une somme modique en utilisant l'extension LNBits Jukebox Livestream
... et bien d'autres... LNbits a beaucoup d'extensions prêtes, il suffit de les activer, de configurer quelques paramètres simples et c'est fait, vous êtes prêt à partir !
Mais avant tout, nous devons préparer LNBits pour qu'il soit prêt pour une large accessibilité pour n'importe quel client et appareil. Comme nous le savons, dans Umbrel, toutes les applications sont derrière le réseau Tor, donc comme tous les clients n'utiliseront pas Tor (uniquement les utilisateurs avancés), nous devons également donner accès aux utilisateurs réguliers connectés via le soi-disant « clearnet », qui est essentiellement ce qu'indique « https:// ».
Préparez votre nœud LN (Umbrel/Raspiblitz etc) LNBits pour qu'il soit visible dans « clearnet »
Clearnet est l'accès Internet régulier, domain.com et/ou IP publique.
Le réseau Tor est un Internet parallèle, utilisant des adresses .onion via « http:// » et n'est pas (encore) largement utilisé/connu et accédant aux services de paiement via Tor, souvent bogué et compliqué pour les utilisateurs réguliers d'interagir les uns avec les autres.
Donc, disons que le petit commerçant a un nœud Umbrel prêt, quelques canaux LN ouverts, des LNBits installés et fonctionnant parfaitement tels quels .adresse onion.
Quelques aspects à prendre en considération :
- Il est recommandé de configurer ce nœud en mode hybride. Voici un guide incroyable (par Hakuna) sur la façon de configurer votre nœud en mode hybride.
- L'envoi/la réception entre les portefeuilles LNBits internes peut être autorisé avec cette ligne dans votre fichier lnd.conf : allow-circular-route=1 (redémarrez lnd après modification). Avec cela, vous pouvez utiliser les portefeuilles LNbits avec des frais internes nuls, dans les paiements directs.
- Apprenez à gérer le nœud LN et à avoir une bonne liquidité. Avoir un bon nœud, de bons frais, de bonnes routes, c'est offrir une expérience agréable à vos clients en leur permettant de vous payer rapidement et à moindre coût en utilisant LN. Ne soyez pas gourmand. Ici, j'ai écrit un guide dédié.
- Engagez vos clients réguliers à ouvrir des canaux avec votre nœud (s'ils ont un nœud LN). Cela résoudra de nombreux problèmes de liquidité entrante dont vous avez vraiment besoin. La liquidité entrante (capable de recevoir des paiements) peut parfois être très coûteuse, donc si vos clients sont habitués à ouvrir des canaux avec votre nœud, cela aidera beaucoup, non seulement eux, mais aussi votre boutique.
- Ayez toujours suffisamment de liquidité entrante pour recevoir des paiements. Il est préférable qu'à chaque fin de journée ou lorsque vous avez eu une journée chargée, vous sortiez de vos canaux les sats reçus, en utilisant un service d'échange, comme décrit dans ce guide. De cette façon, vous commencerez toujours la journée avec plus d'"espace" dans vos canaux pour recevoir des paiements. Vous pouvez également utiliser l'extension LNbits Boltz.
- LNBits n'effectue pas de transactions onchain, uniquement LN. Quoi qu'il en soit, si vous souhaitez vraiment facturer en utilisant l'adresse onchain, c'est possible en utilisant l'extension SatsPay liée à une clé xpub watch only en utilisant l'extension "Watch-Only". Mais les frais onchain nécessitent au moins 3 confirmations (au moins 30 minutes d'attente), donc pour un client, ce n'est pas une bonne idée de le faire attendre. Mais dans des cas particuliers, oui, cette option peut être utilisée.
- Avec l'extension Boltz, vous pouvez envoyer tous les revenus vers votre portefeuille matériel en chaîne dès qu'un certain seuil est atteint. C'est très puissant car une fois installé, vous empilez immédiatement des sats de manière autonome.
- Gardez à l'esprit que LNBits est toujours en version bêta, il y a donc toujours de nouveaux développements. En attendant également une nouvelle extension attendue pour la gestion des utilisateurs et un accès plus complexe.
- Enregistrez votre URL d'accès à vos utilisateurs / portefeuilles créés dans vos favoris ou votre gestionnaire de mots de passe, pour pouvoir également accéder aux détails sur l'URL lndhub, la clé d'administration, la clé de facture, etc. dont vous pourriez avoir besoin pour d'autres extensions maintenant et plus tard.
Pour ouvrir votre instance LNBits au monde clearnet, vous avez ces options (guides étonnants réalisés par Hakuna et Uxellodunum) :
- Configurez votre instance LNBits existante dans Umbrel avec un proxy inverse nginx.
- Configurez une autre instance LNBits en dehors de votre Umbrel, dans un autre serveur VPS.
Configurer la boutique en ligne avec LNBits
Ok, nous avons maintenant nos LNBits accessibles depuis l'extérieur avec
https://lnbits.my-domain.com
(ou tout autre sous-domaine que vous souhaitez choisir), tous les portefeuilles et fonctionnalités sont testés et fonctionnent.
Dans notre boutique Wordpress Woocommerce, nous pouvons installer le plugin LNbits Woo et le configurer pour se connecter à notre instance LNbits, avec les clés fournies dans la section du portefeuille LNBits (walletID, billid, watchonlyID).
Accédez à votre portefeuille LNBits configuré pour être utilisé pour la boutique en ligne (vous pouvez en avoir autant (vous le souhaitez) et copiez la chaîne « facture/clé de lecture ».
Allez ensuite dans votre Wordpress - Woocommerce - Paiements - LNbits - et collez cette chaîne dans la clé API, puis ajoutez votre URL lnbits « https://lnbits.my-domain.com » et c'est fait.
C'est tout ! Vous pouvez commencer à accepter des paiements en bitcoins via Lightning Network. Pas de pages redirigées, pas d'intermédiaires, rapide et simple. Le plugin LNbits génère la facture LN sur la même page et s'affiche à l'étape de paiement. Une fois terminé, un message de confirmation s'affichera et le client recevra normalement par e-mail les détails de sa commande.
Oui, le plugin est très basique, avec peu d'options, pour personnaliser le texte dans le paiement, etc., mais il est suffisant pour commencer à accepter des paiements en bitcoin.
Prendre des paiements en magasin (sur place) par les employés
Eh bien... c'est un autre aspect judicieux.
Nous devons leur donner un accès limité aux fonds du portefeuille du magasin, uniquement pour créer des factures, sans pouvoir dépenser à partir de là. Et LNbits peut le faire de manière merveilleuse.
Nous supposons donc que nous n'avons aucune intégration dans notre propre système PoS avec LNbits ou les paiements en bitcoins, nous considérons le BTC comme de l'argent liquide, nous pouvons donc simplement prendre le paiement de manière séparée, comme nous le faisons avec de l'argent liquide. Dans le système de comptabilité, il est marqué comme « payer en espèces » ou quel que soit le nom que vous souhaitez utiliser, cela n'a pas d'importance, c'est en espèces.
Le serveur/employé aura donc simplement besoin d'un moyen simple de générer une facture LN ou d'avoir une LNURL générale prête à recevoir les paiements.
Les LNbits ont différentes approches, vous pouvez utiliser celle qui convient le mieux à votre activité spécifique et au type de situations.
Nous pouvons utiliser les extensions LNbits suivantes :
- LNDhub (portefeuille de factures) configuré sur l'appareil du serveur/employé. Chaque serveur/employé peut avoir le sien, pour un meilleur suivi
- LNURL-pay QR code, imprimé sur un papier. Chaque serveur peut avoir sa propre adresse LNURL / LN pour un meilleur suivi. Lorsque le client paie, il affichera simplement au serveur la confirmation sur l'écran de son appareil et c'est fait. Il est assez difficile et inutile de falsifier un paiement LN. N'oubliez pas que les paiements BTC / LN sont irréversibles.
- Extension TPoS, configurée sur chaque appareil de serveur / employé
- LNURL-PoS hors ligne avec les petits appareils hors ligne, au cas où vous n'auriez pas une bonne couverture WiFi, vous avez une terrasse qui n'a pas de connexion. Également disponible en application mobile (peut être exécutée sur n'importe quel ancien appareil Android, sans Internet).
- Extension Scrub qui peut transférer automatiquement les sats vers une adresse externe dédiée.
Pourboires des serveurs
Les employés/serveurs peuvent avoir leur propre portefeuille LN personnel pour les pourboires, ou vous pouvez en configurer des dédiés dans votre instance LNBits et leur donner un accès complet à ces portefeuilles afin qu'ils puissent les utiliser dans l'application mobile Bluewallet ou Zeus.
Les portefeuilles LNBits peuvent également être utilisés comme application Web sur mobile, il suffit d'enregistrer l'URL du portefeuille comme signet de widget Web et de l'ouvrir directement. Cela fonctionne parfaitement.
Pour les pots de pourboires courants, l'extension LNbits dédiée peut être utilisée, facile à configurer et présentée sous la forme d'une simple page Web. Ou peut être utilisé un code QR LNUL-pay dédié, avec son propre portefeuille, pour séparer les frais réguliers.
Une autre façon pourrait être d'utiliser l'extension SplitPayments où peut être défini le montant de sats qui va au serveur, à partir du total de chaque paiement. Très facile à configurer.
Comptabilité
À la fin de la journée, lorsque les serveurs/employés effectueront leur comptage de fin de journée, dans le système habituel et compareront simplement avec ce qui a été facturé dans le système LNBits. Un superviseur avec un accès complet pourrait également exporter toutes les transactions dans un fichier csv et/ou l'imprimer.
À ce stade, peut-être qu'à l'avenir, LNbits disposera d'un meilleur système de comptabilité, d'étiquetage des transactions et de personnalisation. Pour l'instant, c'est juste basique mais suffisant pour fonctionner.
C'est également le moment où un superviseur/propriétaire de magasin échangera les fonds des canaux LN dans un portefeuille en chaîne et laissera les canaux presque vides pour être prêts le lendemain à recevoir plus de sats.
Système de crédits de fidélité
Si vous avez des clients réguliers qui peuvent payer à l'avance leur consommation et obtenir des réductions, vous pouvez utiliser un système de cartes / appareils NFC chargés, ou créer simplement un portefeuille LNDHub pour chaque client fidèle, où ils le chargeront avec des sats et les dépenseront dans votre restaurant. De cette façon, les frais seront nuls pour eux et vous aurez un meilleur contrôle de ces « points de fidélité ».
Le client a également le contrôle total de son portefeuille LN, il peut l'importer dans son appareil et l'utiliser comme un portefeuille LN ordinaire s'il le souhaite.
Il existe un moyen de créer des cartes / appareils NFC pour ces portefeuilles. Un exemple ici. Ainsi, les clients peuvent simplement utiliser ces appareils pour payer en magasin. Aucune autre application n'est nécessaire. Voici plus de détails sur les cartes NFC et comment les personnaliser.
Vous pouvez également créer simplement des bons de retrait LNURL et les donner à vos clients réguliers, sous forme de système de remboursement par carte. Facile, rapide, sans complications, il suffit de les imprimer avec votre imprimante de tickets habituelle, le client les retire quand il le souhaite ou les donne simplement à quelqu'un d'autre.
Distributeur automatique hors ligne
Supposons que vous ayez également un service d'hébergement (hôtel) à côté de votre restaurant et que pendant la nuit (quand vous n'avez pas de personnel disponible) vous souhaitiez offrir à vos clients un moyen simple d'acheter des collations ou des boissons.
Cette option pourrait également être utilisée pour le mini-bar de la chambre.
Ainsi, une simple boîte / distributeur automatique avec un système pour recevoir des paiements LN hors ligne est déjà disponible avec LNbits. Vous pouvez choisir la taille ou le type de la boîte, l'important est de la lier à vos LNbits comme décrit dans le tutoriel.
Voici une démo et comment la construire. Le système est simple : le client scanne le QR, paie, l'article est jeté. La machine n'a pas besoin d'accès à Internet.
Boutique hors ligne
Disons que vous souhaitez mettre en place un système de vente rapide de produits/menus à emporter. Donc une sorte de semi-libre-service.
Vous avez un moniteur à l'extérieur de la boutique ou simplement un panneau d'affichage, répertoriant vos produits proposés à emporter.
Le client scanne l'URL LN du produit souhaité, paie et reçoit en retour un mot comme « preuve » de paiement. Les mots peuvent être configurés comme vous le souhaitez et modifiés quand vous le souhaitez.
Ensuite, le client entre dans votre local dans un endroit spécial où vous livrez et présentez le(s) mot(s) payé(s) pour les produits. L'employé a ensuite la preuve de paiement et vient de livrer.
Voici un tutoriel de démonstration de la configuration et du fonctionnement.
Un autre exemple de scénario de cas d'utilisation ici comment acheter des sandwichs avec LN.
Jukebox de musique DJ Lounge
Disons que vos clients veulent entendre une belle musique dans votre bar / restaurant, en choisissant leurs propres chansons préférées. Vous ne voulez pas laisser tout le monde changer la musique, mais seulement ceux qui paient des frais.
Vous pouvez donc configurer un simple appareil de musique, le relier à votre système LNbits et permettre aux clients de payer pour les chansons et de les écouter.
Incitatif pour votre ambiance et offrez une expérience agréable à vos clients.
Voici plus de documentation sur la façon de configurer l'extension Jukebox.
Voici une démo de didacticiel vidéo.
Personnalisation spéciale et sauvegarde
Si vous souhaitez restreindre l'accès à votre instance LNbits « publique », vous pouvez modifier le fichier de paramètres en procédant comme suit.
Ajoutez uniquement des comptes utilisateurs spécifiques créés dans les paramètres d'environnement LNBits :
- Entrez SSH dans votre nœud Umbrel
- éditez le fichier de configuration yml : sudo nano ~/umbrel/apps/lnbits/docker-compose.yml
- ajoutez dans la section #App la ligne : LNBITS_ALLOWED_USERS : YOUR_USER_ID_FROM_WALLET_URL avec des virgules séparées si vous avez plus d'utilisateurs à autoriser
- redémarrez l'application lnbits : sudo ~/umbrel/scripts/app stop lnbits && ~/umbrel/scripts/app start lnbits
Bientôt, une extension d'administration complète de gestion des utilisateurs sera disponible, il ne sera donc plus nécessaire d'effectuer cette personnalisation et la création de nouveaux portefeuilles ne sera plus restreinte. Mais jusque là, vous pouvez l'utiliser comme ceci.
Si vous obtenez une erreur comme lnurl.Exceptions.InvalidURL lorsque vous créez une LNURL (payer ou retirer), ajoutez cette ligne dans le fichier .env ou dans le même fichier yml mentionné ci-dessus.
FORWARDED_ALLOW_IPS=*
Aussi un aspect important : la SAUVEGARDE de la base de données.
Pour sauvegarder une sauvegarde de votre instance LNbits (y compris l'historique des transactions, les portefeuilles, les comptes), vous pouvez sauvegarder le dossier de base de données situé dans : ~/umbrel/app-data/lnbits/data
En particulier le fichier de base de données sqlite3, mais il est bon de sauvegarder l'intégralité du dossier de données pour toutes les extensions utilisées.
Si vous devez éditer directement dans cette base de données sqlite, vous pouvez installer un éditeur de visualisation simple pour sqlite. Plus de détails ici. Ensuite, vous pouvez ouvrir le fichier de base de données sqlite et modifier toutes les tables et éléments nécessaires, en ajustant les soldes, en supprimant et en modifiant les utilisateurs/portefeuilles existants.
Conclusion
Voilà donc un scénario complet sur la façon dont vous pourriez utiliser cette incroyable solution LNbits pour un restaurant d'hôtel. Vous pouvez étendre cela à votre activité spécifique, en couvrant tous les besoins qui peuvent être satisfaits avec les portefeuilles LNBits lndhub, vous voyez maintenant à quel point il est puissant et facile à configurer, en ayant la garde complète de vos fonds.
J'espère que ce guide pourra inspirer davantage de commerçants à commencer à accepter Bitcoin.
De plus, les passionnés de Bitcoin aident les commerçants qui n'ont pas suffisamment de compétences à créer de belles solutions pour les paiements en bitcoins.
Si vous n'êtes pas doué en technologie pour créer vous-même cette solution, voici une équipe de spécialistes de LNbits de SparkPay (Portugal) ou d'Allemagne/Autriche par Business Sats qui peuvent créer cette solution pour vous.