1. "payment for a video card" isn't all that informative, ever thought why companies use huge invoice forms that include exact model numbers, quantities, descriptions, shipping address, etc...?
2. Adding all the above info to the blockchain will massively increase it's size, and, decrease bitcoin's anonymity (Which I guess is what you want), I actually believe the owner's of blockchain.info did this for about a week and got shit on by people, so, they changed their "note" system to a centralized database instead.
3. You can already do this if you really, really, want, simply by having a script that returns true correctly, but, leaves left over data in the stack, or, simple has data, something like this could work (I think):-
https://blockexplorer.com/tx/e746bdd987af06fa5e1463890a2a3dce996ccecaf9bed45250645b9ac0e1678cOP_DUP OP_HASH160 79d489a25a36c8f72b493d6a0ae5a89420fb1a7a OP_EQUALVERIFY OP_CHECKSIG
Change that to something like:-
5265616c6c793f20596f752061637475616c6c7920626f74686572656420746f20636f6e766572742074686973206261636b206f7665723f2049276d206e6f742061637475616c6c79207375726520696620746869732077696c6c20776f726b2c2049207468696e6b2069742077696c6c2c20646f6e27742071756f7465206d6520686f77657665722e204f682c20616e642c20746865726527732070726f6261626c792061206d6f726520656666696369656e7420776179206f6620646f696e6720746869732c20726174686572207468616e206a75737420616464696e6720697420616e642064726f7070696e672069742c206275742c206f682077656c6c2e OP_DROP OP_DUP OP_HASH160 79d489a25a36c8f72b493d6a0ae5a89420fb1a7a OP_EQUALVERIFY OP_CHECKSIG
Adds the hex of the message, instantly drops it, then continues with the script as normal.
4. Who the fuck specifies how much it is and in what currency? That's my biggest issue.