The last mile gap is the bottleneck preventing greater adoption.
Seeking a solution: Customer wants to use an iOS Lightning Network (LN) wallet (e.g. bluewallet) to pay to any store that accepts LN BTC.
[ifpaid 0.00001 BTC text=”Please pay 0.00001 BTC to continue reading.” button=”Click here to pay using the Lightning Network”]
The store will have a node address + LN wallet e.g. Spark/clightning (NodeAdd1). How can the store setup the routing to make it possible for the customer to make LN BTC payments without the need to open direct channel with that store?
Have opened channel
between:
- http://lndhub.io/ and the NodeAdd1 as well as
- a
well-connected hub ACINQ and NodeAdd1.
Both cases, the LN BTC payments made under the iOS wallet(s) failed to go through.
LN BTC wallet in the android space is working fine and customer is able to open direct channel to a store to make purchases.
In certain market, the market share between iOS and android is 50:50 and it will be very useful for merchants to have incoming channels from well-connected hubs to tap the iOS market.
However, in the iOS space there seems to be no possibility for customers to open channel directly.
Merchants will need to request well-connected hubs to create incoming channels so that customer using iOS LN wallets can shop at their stores without the need to open direct channel.
The first method is to send LN BTC from the store’s wallet to a well-connected hub’s designated node address and at the same time for the latter to open incoming channel back to the merchant’s wallet using its node address.
A second method is to go to a decentralized exchange where:
- the merchant creates a channel with the exchange – you need to obtain the node address from its site
- need to make sure there is sufficient funding available for channel opening
- proceeds to the exchange site and exchange LN BTC to on-chain BTC
- since the payment of the LN BTC will be from the merchant wallet, generate an invoice (for refund) from the “Request” button for the amount of bits/satoshi to be exchanged and copy the QR code or its text to the exchange form
- select a wallet to receive the on-chain e.g. eclair>your bitcoin address, and copy that address to the exchange form
- the exchange will then generate an invoice (QR Code and its text) for the store to make the LN BTC payment
- from the merchant wallet, select “Pay” button and copy the QR Code or the text generated to the “Payment request” box and proceed to send
- the exchange will provide a status report i.e. Deposit received > Exchanged > Sent with the Order ID displayed for reference /follow up
- upon payment, the channel will re-balance and the exchange is deemed to have provided incoming capacity of the amount the store has made payment
Once the store has completed the above steps, users with iOS LN wallets can shop at the store without the need to open channel directly.
Presently, iOS LN wallets such as BlueWallet and Wallet of Satoshi are custodial (some will be view its centralized feature as a downside), and are convenient for end-users for their ease of use in accessing online stores and making payments. Both these wallets are also available for Android devices. Having tested the
Wallet of Satoshi on an Android device and from an ease of use perspective it worked like a charm. In this respect, it will be great for mass adoption for the lightning network space.
As part of the ongoing discovery, it has been observed that a merchant receiving payments will need to constantly monitor that it has sufficient incoming capacity. Otherwise, a customer making payment will encounter a failure. Also, for non-custodial LN wallet e.g. Eclair Mobile , it is still not possible to receive payments to avoid a situation where its peer publishes an old state and claiming funds that it may not be entitled to.