Non-custodial via BTCPay Server is an excellent option, especially if you already use BTCPay for donations or a store etc.
Discussion
Note that this won't properly show Zaps yet, though you'll receive them properly.
Publishing invoice events to Nostr is a WIP:
https://github.com/btcpayserver/btcpayserver/discussions/4642