Because a debit or credit card will cause the merchant to pay a fee. The Thai QR Promptpay system is free to use under 5,000 Baht and even then a sliding scale of 2 Baht for up to 30,000, 5 Baht for 30k-100k, and 10 baht for over 100k. It's incredibly cost effective for people to accept money, especially for those small merchants every day.
The QR system in Thailand is awesome phenomenal advancement when you consider how much is being skimmed by bank fees, or card schemes elsewhere.