Mandatory "d" or "h" UX issues



Summary:

The Lightning Network payout feature is being built to allow users to purchase Bitcoin with fiat and have the coins sent via LN rather than on-chain. The main issue faced is ensuring recipients generate the correct Bolt11 invoice. The mandatory "d" and "h" fields create a UX issue for Bitcoin services that are performing payouts/withdrawals in the absence of a widely adopted payment protocol. The design of Bolt11 may have been biased towards merchants, as recipients typically decide what the invoice will be, but for LN payouts, the sender is the service provider creating the terms of payment. This requires the sender to communicate exactly what type of Bolt11 invoice they want the user to create, which often means the user manually entering some fields in their wallet. In case the content doesn't match, there will be a payment failure.This creates a situation where the service provider depends on the user to create a correct invoice before sending them the funds, adding an unnecessary requirement for communication, lower payment success rates, and higher abandonment rates. Users already have trouble entering the correct amount of BTC when paying invoices that aren't BIP21, so there will likely be issues with them writing down the correct description. The logic behind making "d" and "h" mandatory should be left to Bitcoin businesses, and it's questioned whether they can be made optional without breaking anything. The issue is tracked on Github issue #541 on the lightning-rfc repository.


Updated on: 2023-06-02T17:03:13.328232+00:00