Knowledgebase
How to allow customers to attach files to products in Magento
If for some reason you want to allow users to attach a file(s) to a product they want to order, you can achieve this by adding a custom option to that product. To do this, after you log in to the admin panel go to Catalog menu>Manage Products and find and click on the product that you want to edit. On the page with the product settings click on the Custom Options button on the left.
On the page that's displayed on the right click on the Add New Option button. Once you do that a few settings will appear. Select File from the Input Type drop-down menu, type a name for the option to be shown on the frontend, select whether you want it to be a required one and in the respective field that's provided list the allowed file formats (e.g. jpg,txt, etc.). Then click on the Save or on the Save and Continue Edit button. The option for uploading a file will be available on the product details page of that product on the frontend.
For more details on custom product options check out the tutorial on adding and managing custom product options in Magento.