Как защитить локальное веб-приложение от взлома(ключа продукта)?
После оплаты, делаете сборку приложения с шифрованием ключа для запуска приложения с помощью хеша от номера платёжной транзакции.

Если нет хеша - программа при запуске просит ввести все платёжные данные покупателя и ключ для генерации файла-лицензии (на стороне пользователя программы), которым она каждый раз будет расшифровывать данные для запуска основного кода.

Если ключ и платёжные данные покупателя - корректны (расшифровка прошла успешно), то программа запустится, сохранив файл-лицензию именно для этого ПК.
Я бы покопал в эту сторону. Сам таким никогда не занимался, поэтому подробнее ответить не могу.
Но в том случае, если отдаёте голые исходники, шансов полной защиты нет.