LNURL is a set of protocols that make it possible to achieve smooth end-user experiences using Lightning. It's a specification that defines side-channel communication between wallet applications and service providers, while avoiding centralization.