This situation happened to me just a couple of weeks ago.

I was at an NAHL (junior) hockey game and had a puck come flying over the boards into my section...there was a group of three kids, probably between 10-12 years old, that ended up running over to pick it up...as they were walking back to their seats, I held up my hand, signaling that I would pay $5 for the puck...he ran right over and gladly made the exchange...a couple of minutes later, he came back with a pizza and pop, and seemed genuinely happy he made the deal...I looked at it as the puck meant more to me than the $5, and the $5 meant more to him than the puck...I think as long as you're not trying to pull a fast one on the kid, there shouldn't be an issue with it.