I built NoNodePay for this exact purpose a few years back, no lightning though. This is a simple shopping cart that creates keypool to give each buyer a unique address to pay to, as well as an admin dashboard to track orders, add new products etc. Lots of room for improvement but the basics are there.
https://github.com/coinables/NoNodePayHere's a video demo and a walkthrough of how to set it up on just about any server, even free shared servers:
https://www.youtube.com/watch?v=jBUnOFxe24sJust wondering, which blockchain explorer API do you use? I expect such service change their API after some time, so your software could break in future.
It uses
Blockchain.info, as seen in the code. Not only will this break if they change their API or shut it down, it also makes you completely reliant on this API being benevolent (from the inside) as well as not being hacked. For example, someone might find a flaw in the TLS certificate, MITM your connection to the API and serve you wrong information, such as showing them having paid, while they have not.
Your software would then provide them the (physical or digital) item they supposedly purchased, while not actually having received the BTC.
If someone were to use such a software, I'd make sure it at least queries multiple block explorers and checks them to give identical results. In any other case, it should send you a
big red alert that something massively suspicious is going on.