1jk1,
My guess is that initially each type of code will carry it's own purpose. In other words, if all a company needs is a link to a website, direct codes are fine. However, if they need a smaller code to fit on a package, or special reporting, enhanced security, etc. then indirect will be the way to go.
I'm in agreement w/you that in the long term indirect could prove to be the eventual overall winner. But if it happens it will take a number of years.
Best,
BC