Exactly that’s the interesting point. I don’t know if you ever connected e-commerce shops with traditional payment gateways (Visa, Mastercard, Paypal, …)
You get the "merchant-ID and access credentials from a (your) bank and the developer integrate it into your shop or whatever application.
Whenever a customer selects one of these digital payment methods he inserts his ID (credit card) or is redirected to the PayPal website to identify and verify that he has the money to pay you. So far nothing special or new.
But these middle-men payment providers automatically connect the seller’s payment request with the buyer’s payment. 1:1 all is clear.
Now our goal is to have a future system without any (centralized) intermediaries.
Just to clarify: I talk about normal day commerce and payments (food, services, goods, …) and not AK47s or strange chemical substances.
So for such things, it doesn’t matter to stay hidden and anonymous. The seller needs to know which of the incoming transactions is yours, in order to deliver the goods or service. Imagine there is s rush to a hot item (like a fidget spinner or such crazy useless things) and your shop gets several orders per minute. Imagine you’re a pizza-call service. You would have no idea who of the placed orders effectively paid the (correct) amount and what has to be delivered just now. Since there is no merchant id and transaction number provided by Visa or Paypal you need some “metadata”.
I’m - not yet - deep enough involved in smart contracts, to understand if this little order ID has already to be a smart contract, or if it’s only a couple of bytes as a - in the best sense of the word - payload.