关于SO的上一个问题,我在active_merchant github问题上提出了一个问题,发现我必须更改正则表达式来验证来自JCB的卡。
现在的问题是,如果它们确实存在,我在哪里可以找到更改或更新的IIN?这篇wikipedia文章将JCB的IIN范围显示为3528-3589
。
但是我从Authorize.net获得的测试卡号是3088000000000017
。但是这个卡号不在维基百科指定的范围内。
所以我的问题
答案 0 :(得分:0)
我的建议是,如果没有令人信服的理由知道卡计划,可以应用最松散的验证;如有必要,仅根据第一个数字退回。 (特别是如果基于来自维基百科的IIN / BIN数据拒绝交易......)
例如,在您的链接验证方案中,假设所有Diners卡都开始于6011 - 还有其他范围。
我不知道Ruby的RE引擎是什么,但/^4[0-9]{12}([0-9]{3})?$/
实际上匹配19位PAN? (它必须)。
FWIW我使用(英国中心):http://www.barclaycard.co.uk/business/files/Ranges_and_Rules_September_2014.pdf