When you use them it is still a charge to one of those credit cards.
It might actually cost Walmart more in my case, because the card I have on file has larger rewards for online purchases than it does for in-store purchases, and the Walmart app processes purchases as online even when made in-store. If I pay with the physical card it is processed as in-store.
They’re just stubborn and want people to use their option (and card, if possible).
As it is you can load any credit card into the Walmart app and pay by pointing the “check price” barcode camera at the screen.
[Citation Needed].
On the other hand, stores like that probably already do facial recognition on customers, so it really is just intransigence to not allow contactless payments.
For example, our local bus company can quite happily offer capped daily and weekly fares when folk use the same device to pay.