我试图弄清楚如何根据其数量来检测信用卡的类型.有谁知道一个明确,可靠的方法来找到这个?
如何确定某人正在输入的卡是借记卡,支票卡还是信用卡?
我正在考虑在美国进行网上付款.这是用于公用事业计费.
我最初可以通过执行Luhn检查算法来检查以确定我是否有有效的支付卡号.
但是我需要确定它是信用卡还是借记卡来相应地执行下一个任务.我明白这取决于前四个字符,但我不确定确切的范围.
如果有人可以解释或提供一个解释这将是伟大的链接.谢谢.
编辑...
在这两个stackoverflow链接中我没有看到我的问题得到解答.因此,这对于任何这些都不是重复的.
在我的情况下,它不会使用读卡器读取卡,而是使用卡号,CVV和exp日期来完成付款(用户插入这些东西).
同样"是"我可以检查以确定它是Visa卡,万事达卡还是美国运通卡.但无法找到它的卡Credit或Debit卡.(例如,如果卡是Visa卡,那我怎么知道Visa卡是"信用卡"还是"借记卡".这是确切的问题) .
现在我根据它的前四个数字检测信用卡类型.
这些前四位数经常变化多少次?是否有可以与ASP.NET连接的服务,它将保留这些前四位数字及其相应机构的最新列表?
我们目前使用Reg Ex检查信用卡号,以使用维基百科的范围查找卡类型,但这不是最新的.
这篇SO文章与要求类似,并提供了与Barclaycard资源的良好链接,但是这需要手动检查以进入Reg Ex或其他系统.
是否有人使用或知道维护/更新的Regex或csv,当对这些范围进行更改时可以轻松导入,例如,当新的万事达卡借记卡推出时.
更新
我们现在从Verifone获取一个IIN xml文件来处理我们的卡片.自上而下读取文件,直到找到与卡号的前6位匹配的第一个范围.