Business model is as follows:

  1. Customer uploads a file (PDF/XLS)
  2. Customer pays for our services through one of the payment gateways
  3. We use the information from the file to manually create a unique PDF for the customer
  4. We upload the resulting file to customer panel
  5. File is emailed to the customer + customer is able to login and download it

Is this doable with Magento and extensions, without writing our own?

1 Answer 1


I'm not sure you're going to find a way to do this without some customization.

Downloadable products allow you to specify a URL instead of uploading a specific file. I think you should be able to use that to have the customer hit a url such as: example.com/customfile/download when they are logged in. This custom controller would have some logic to check the current customer and then provide a list of files you've uploaded. The files would probably need to be a custom model that contains a handful of fields, likely: customer_id, file_url, file_name, etc ...

Some semi-pseudo code might look like:

// Controller
$customer = Mage::registry('current_customer');
$files = Mage::helper('my_custom_helper')->getCustomerFiles($customer);

// Helper/Model (up to you to decide how to organize the module)
public function getCustomerFiles($customer){
    $files = Mage::getModel('my_custom_files_model')->getCollection()
        ->addAttributeToFilter('customer_id', array('eq' => $customer->getId()));
    return $files;

For the files model/collection, you can search on how to build custom models/collections. The Ulimate Module Creator might be of some help here.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.