Yes the payment is in FIAT
Fake payments/ Theft is basically a situation where the customer picks the product and walks away without paying for it, I am thinking about how can I possibly stop this using cryptography.
Only product details and a predefined payment button after the QR is scanned are what I intend to be public.
The main goal of this product is that the cashier should be the 2nd option for the customer.
RFID tags are kinda useful in this situation, but not exactly. I don't want some employees to remove the tag from products after the payment is made so that it could leave the store. If the payment is made for the product, then the product/tag should be smart enough to detect whether or not it was a successful transaction.
This means that the data is yours, as everybody said before, it's a closed system that doesn't need cryptography.
And since you accept only fiat too, this becomes off-topic here.
Plus, there are no fake payments: there are people paying for what they get and people who steal (no matter if they steal 1 and pay for the rest and so on, that's just a distraction from the logic).
So you have to identify when a product that's not paid for leaves the shop. As simple as that.
For this you need RFID and uniquely identified items, not cryptography.
For this, when an item is scanned, you may mark it "scanned" and link it to the future invoice and when the invoice is paid, all the linked items you mark as "paid". An item is free to leave only if it's paid.
Simple logic. Where would cryptography help? Why do you want to add extra layers of complexity for something that can be done in a simple way?
And you said you want to avoid RFID. If you avoid that, you will want a way to find out a product has left the perimeter, sometimes being concealed between other products? How else could you do this???!? Cameras can partly help, maybe. Cryptography is .. not for this, it's completely useless in the equation.
There are already clothes shops where the RFID is embedded and you may not even find it easily.
Wow.