Very little commerce can occur using a static address.
A similar problem is faced where bitcoin exchanges accept cash deposit at a bank. All the customers will deposit to the same bank account, so the solution was to request a unique amount for each customer. That amount is what marks the transaction and provides the ability for the exchange to know which customer account to credit for the deposit.
That type of scenario is vulnerable to human mistakes and inconveniences the customer -- paying more or less for a purchase just to overcome this "one address" limitation is not an ideal solution.
The static payment address also works suitably well where transaction volume is very low. If there is only a few payments in-progress at any point in time, a merchant can manually figure out which customers have paid and which haven't. But that doesn't scale and will also be impacted by human error.
About the only use case that makes perfect sense is for donations where the contributor does not need to be recognized. But even then, a static address may not be ideal. Consider the WikiLeaks donation address. Now that Assange is an enemy of the state, having transactions to WikiLeak's address be relatively easily discovered might not be good.