Unless I’m confusing it, one major downside of the current ZAPs NIP is that if I change my LNURL (lud06), it prevents unprocessed (or future processed) ZAPs from being validated.
How? Well, part of validating a ZAP is decoding your LNURL and doing a get request to look for the nostrPubkey JSON property. The sender of the 9735 event MUST match.
If you change your LNURL (like change wallets), that pubkey now won’t match.