I suspect that that is straight-up illegal in two different directions: it is unlikely that the credit card company would be pleased to find out that these folks are trying to use a credit card signature for something else, and I'm pretty sure any lawyer could get such a contract thrown out with exactly zero effort, if it truly is framed as just being the receipt that you use to pay (a contract has to be intentionally signed by person who intended to agree to it in order to count for anything)
(IANAL, could be wrong)