I'm trying to add a new column to the sales order grid that shows whether an order has previously had its invoice printed out - I've searched everywhere and can't seem to find a solution.

We use custom grids at the moment and have several custom columns


1 Answer 1


That can be a bit difficult to track. How are you printing invoices? How do you track whether your customer print an invoice you send attached in an email?

Let say you have a way to track this, I would create a custom order attribute to flag orders and show it in a custom column in grid, look at this for example: Mage_Sales_Controller_Abstract::printAction() to a place where set the attribute to true.

You can have your custom controller to handle your attribute flag and then redirect to Mage_Sales_Controller_Abstract::printAction()

For more examples on printActions look in admin controllers at: app/code/core/Mage/Adminhtml/controllers/Sales/Order/

If you are using print functionality from backend then you can add the flag attribute and set the attribute by listening one of the events controller post/pre dispatch. Then show attribute in grid.

This is a good resource on how to add custom attributes to orders

  • Hey! thanks for the answer - its actually from the backend only - due to several people using the backend at once we wanted to make sure no one was crossing each others paths Mar 18, 2016 at 11:22
  • Hi, I have updated answer, check last paragraph. Hope this help.
    – davidmpaz
    Mar 18, 2016 at 11:57
  • Are there any created solutions I can implement? Only been working with Magento for 6 months and still quite new to it - willing to pay Mar 18, 2016 at 12:15
  • Edited again :) if you think I have helped please accept the answer. If still feels like don't want to do the work, feel free to get in touch ;)
    – davidmpaz
    Mar 18, 2016 at 13:13

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.