I think it's typical for kids her age to not be able to quite handle some responsibilities, and then lie about it because they don't want to get caught.
I'm pretty sure my 9-year old would be buying cookies and ice cream if she had an account! I think as parents we put a lot of control in, and then when the kids are allowed to go off on their own they take advantage of the freedom.
I would have her solve the problem, which is what I do with my 9-year old when she does something similar. She used up all the money on cookies and ice creams--now what is she going to do for lunches? Guide her toward the right answers, but let her come up with the solution. The obvious solution is she is going to have to earn some money to pay for her lunches. Allow her to do this by doing extra chores, she should have to earn $20 since that was the amount she squandered. At a dollar a chore, she has about 20 chores she owes you.
In the meantime she should have to take a very, very boring lunch to school every day. I would say a peanut butter and jelly sandwich, some fruit or veggies and water. The same lunch, every day, until she earns back the money.
I would think that would fit the "crime" better, and I think kids do better when they feel like they've solved the problem. When she grows up she'll make plenty of mistakes (we ALL do!) and hopefully she'll have learned how to correct her mistakes.
I do try (and I'm not perfect at it) to let my daughter know that we all make mistakes and she can come to me and tell me about it. We can figure out together how to solve it, and yes it might mean extra work or punishment but in the end we only hurt ourselves when we lie. By focusing on correcting her mistake (through extra work instead of punishment) I think it has helped with the lying a little bit.
At any rate, I don't think your daughter is the first to do something like this. Hopefully she will learn her lesson for the future.