4 ms·
Most modern payment gateway APIs will offer a 'verify' command. This will tell you if the card is viable (not closed) and you can usually pass additional fraud
by hakfoo 7y ago
Most modern payment gateway APIs will offer a 'verify' command. This will tell you if the card is viable (not closed) and you can usually pass additional fraud-scoring data (address and CVV verification) to further sanity check. Some APIs will use this to provide you extra metadata (i. e. the card issuer or type) which could theoretically be useful for fraud checking or customizing an offer (I'm imagining a cross-promoted "Pay with your Citibank debit card for 2% off") These typically don't even register on your statement.
The next step up from there is the "authorize only" that some of the other commenters mentioned. You can do a $1 authorization, but if you're going that way, you may as well authorize for the full amount, because the APIs typically let you convert that directly to a live charge if it was successful; it also helps avoid customers gaming your trial process by giving you a prepaid card with just $1 on it.
In some cases, they'll implement the "verify" process as something like "Authorize-only for 1 cent, then immediately cancel it" for technical reasons.
The entire payments ecosystem is a layer cake of abstractions that don't quite match each other perfectly.