I would have made him sing a damn song for them sandwiches. Gimme some messy choreo atleast. The entitlement is unreal. It's sad that people would jump to feed an ungrateful a$$ yet pay dust to a homeless person who actually needs the help.
His credit card could have been declined for a million different reasons. It's very unlikely it's to do with not having enough money. The bank must have thought something suspicious was going on. You card can be declined for using it multiple times in a quick period of time or if you travel and don't let the back know you will be using it in a different location.