Add a custom order field (not customer profile field)

Is there a way to add a custom field for an order, instead of a for a customer? We want to add a secondary PO Number and another identifier number for customers to fill in when they place an order (both optional), and I can't find any way to add a field like this. I can see the Profile fields, but those are stored for a customer, so each time that customer places an order, the field would be overwritten from the value saved from the last order.

I also will want to display these custom order fields on the invoice, so any tips for that part would be appreciated also.

Thank you!


You can add custom fields to the profile as you say, which would work for one-time use only. Next time the same customer checks out, this would be overwritten, so is far from ideal.

There is an add-on available which achieves half of your requirements: Checkout Summary Fields

It looks like this addon stores the captured details in the Customer Notes section of the order, but presumably with some further coding, you could use the variable values to pass on in to the invoice. Unless of course you only need the Purchase Order, then the Notes would only contain that information and not any other custom field data, therefore you would just need to add the Customer Notes to the invoice, if it isn't already added.

Thank you!! That looks like exactly what I need. It looks like all custom fields would be displayed in the Notes area on the invoice, and that would work. I appreciate your quick reply, I have been trying to figure this out for way too long.