Last weekend during the lightninghackday hackathon my team and I from the spontaneously called website www.schnellbezahlen.de enabled Berlins famous bar ROOM77 to be the first physical store in the world to actually accept lightning payments. Afterwards the first transactions has happened and I want to share with you how this awesome proof of concept became possible after an effort over several years to scale bitcoin and make the lightning network possible.
Once more I went to the lightninghackday in Berlin. This time the event was co-hosted with a hackathon. Nadav Ivgi released the spark-wallet (server and client) interface for c-lightning last week. After a quick test I felt the huge urge to build a service using spark-wallet. I realized that for many customers running their own c-lightning node would not be easy. However running a c-lightning node is necessary in order to run the spark wallet. I assumed that for small amounts of money people might also be willing to use a custodial service and trade trust for convenience. I know it is a little bit against the bitcoin philosophy but hey you don't have to use the custodial service. (more on this later)
So I proposed the idea to have "spark as a service" project for the hackathon and quickly a team around this idea was formed. As the conference was also really interesting by the end the team basically shrank down to Philipp Richter, Fabian Jahr and me. Our goal was to provide well connected and previously funded c-lightning nodes together with the spark-wallet node js server. Customers could get access to their server in exchange for a few milli Bitcoin. The experience would be that this would create an experience in which users - after 1 successful Bitcoin transaction to pay us - would be able to run their lightning wallet on their cellphone or desktop client. Thus having the possibility to pay and receive small amounts of bitcoin with basically no fee and at instant speed over the lightning network.
Philipp did an amazing devops job to build a process with which we could fire up c-lightning nodes on request on his hoster. I helped with the c-lightning config knowhow and the "yet to be merged autopilot alpha version" to be able to connect the nodes and fund channels. I talked to the CEO of vaultoro - co sponsor of the event - and asked him if his company would be #reckless to borrow us the funds for this alpha version easily breakable service to kickstart it. I emphasized that he might not get them back. He anyway agreed to do so. Thanks and big shoutout! At this time there was the owner of ROOM77 in the room and got curious about what we were offering and asked if he could be the first customer.
Long story short: A hackathon is really short and many people are running around. Short before the end we realized that there was a property of the spark-wallet which would not smoothly integrate with our apache proxy server setup. We were almost about to call off our demo for the hackathon. Even though we could do a quickfix we did not feel reckless enough to risk Vaultoros credit to us. However the owner of ROOM77 felt reckless enough to beome the second customer of schnellbezahlen.de right after Daniel Goldman (who by the way recently wrote an excellent overview article about the lightning network)
The event was over and everyone went to ROOM77. Unfortunately for us there were so many customers that there was no time to explain and test the interface. However at midnight everyone had supper and we could go out and test it. I explained the wallet and its functionality to the owner. He realized that this was not even necessary because it is so intuitive and easy to use. I did a first test payment. With the consensus of Daniel Goldmann I did a test payment of about 2 USD from his custodial wallet to the wallet of ROOM77. We used that one since there was already a previously funded payment channel set up. The payment was received within one second and I got my drink (: (Again thanks Daniel for the invitation)
Of course we wanted to go for the real deal. Stadicus3000 pulled out his eclair mobile wallet while an invoice of 4.1666 mBTC was created (roughly 30 USD) Stadicous3000 had no payment channel to ROOM77 he didn't even know the key of the ROOM77 node. It turns out no problem. The invoice was scanned and for the next 9 seconds the tension was high. Would the lightning network be able to find a route for such a high payment?
The answer is yes!
In less than 10 seconds the invoice was successfully paid. the routing fee for the network was 2.348 satoshi! At the current rate that is 0.017 Cent. Yes you read correctly. Not 0.017 USD. 0.017 Cent! For just one cent of fees you can completely anonymously and fastly pay 50 bills at ROOM77. I really don't know what I am supposed to say. It was a fun journey and that I am really proud to be allowed to be part of this (even though I have to admit that there is 10 years of software development of a large open source community. It is their work that was used to make this possible.) Hopefully this week I find the time to go technically a little bit deeper to finalize my pull request for the c-lightning autopilot feature.
If you liked this article and are interested in the follow ups you can follow me on twitter.