By providing the materials to him, you further endorsed the verbal contact that you agreed to, by not objecting and by not trying to negotiate payment terms.
You didn’t let them know at any time that you didn’t want him to do the work…not even when it was shoddy work that you had to redo.
It is perfectly understandable that you didn’t want to hurt his feelings by complaining but that is exactly why you got into this mess in the first place.
You didn’t like his work, you didn’t want to pay, but for the duration of the time it took, you kept quiet without saying what was on your mind. Big mistake.
You can’t have it both ways OP which is exactly what you’ve tried to do.
Until now.
The onus is on you now, to receive the invoice in good faith in my opinion, and hope it’s very little.
If it’s way beyond reasonable for the work he did, then you can certainly try to negotiate down as you would for any contractor.
If you want to spare his feelings, then you have to continue the same way you have been throughout, and go along with the whole charade and pay up.
The whole thing now rests on the strength of your friendship with them. You have to ask yourself, are they friends whose feelings I want to spare or are they a contractor company.
From a moral point of view, I feel you should pay up a small amount for his time only and put it down to experience. We all learn in this way as we go along in life.