You can verify the card details, as well as see the results of the CVC and zip code checks, by saving the customer’s card in Stripe.
To prevent card testing, Stripe is sometimes required to not check cvc and zip checks on card validations, so they may appear as “unavailable”. Those checks will be available on the charge object once an actual payment is made. Stripe uses machine learning to predict when card testing is likely. These checks also may be unavailable as a cost-optimization if Stripe’s machine learning predicts the card is valid and that performing these checks will not increase the probability of a successful payment.
The card information is verified when the card is saved, but it only verifies that the information is valid: it cannot check credit limits or account balances to guarantee that a card will have sufficient funds when you do decide to charge it.
The card can still be declined or fail for other reasons.