Hi there,
I am so sorry you are going through this, and I know you must be completely besides yourself.
My major concern is similar to what others have already mentioned (I.e he had indeed already met this person, which is ultimately why he left you in the first place.) Worse still, he could have only come back because the other person dumped him.
Why should you put up with this, when you have done absolutely nothing wrong, other than having stuck by him for the long haul?
Personally, I wouldn't be so quick to take him back (even if you do intend to stay with him ultimately) because if it's so easy for him to stray and not pay, then he will most likely do this again to you, and you don't sound like you deserve this kind of treatment.
Make him experience the consequences of what he has done to your family for some time. In light of this latest discovery (receipt for meal for two) I would ask him to leave, and make the pig sweat...it might result in you deciding that, actually you don't want to be with him either. Alternatively, it may just confirm that you love him, and don't want to throw away all the years you've invested in your relationship.
Either way, I reiterate the point that I don't think you should make it easy for him.
I hope you can keep your chin up, and not allow this to affect your mental health/wellbeing too deeply (although I know you will presently be in turmoil, which is only natural.)
You have been together such a long time, and it may well be true that he feels this was all a mistake, and that he really loves you. Unfortunately you will probably never ever get to the bottom of the truth, so I would most definitely make him realise that if he betrays you like this in the future, it will be no easy sail.