验证信用卡号(超出格式)

Posted

技术标签:

【中文标题】验证信用卡号(超出格式)【英文标题】:Verifying Credit Card Number (beyond format) 【发布时间】:2011-09-10 21:04:14 【问题描述】:

在为 Authorize.net ARB 索要信用卡时,您如何验证该卡是否能够被扣款?

我环顾四周,发现常见的做法是收取 0.00 AIM 费用。这是我尝试过的(以下类来自最新的 AuthNet php SDK):

$authorization = new AuthorizeNetAIM;

$authorization->setFields(
   array(
     'amount' => '0.00',
     'card_num' => $credit_card_number,
     'exp_date' => $expiration_date,
   )
);

$response = $authorization->authorizeOnly();

虽然此代码有效并针对无效卡号引发错误,但当我输入 -real- 号码时,它会响应以下错误:

此处理器不接受零 此卡的美元授权 输入。

好的,所以,收取 0.01 美分。然后,它说交易成功,告诉我这张卡可以继续创建 ARB 订阅。

如果我需要收取一分钱,这实际上是在 Authorize.net 端进行的吗?我不想实际向某人的帐户收取一分钱。 auth_only 交易类型是否只是对卡进行授权?有没有办法在收到成功回复后立即作废?

【问题讨论】:

【参考方案1】:

如果您在执行 0.00 美元的身份验证时遇到错误,那么您的处理器还没有达到新要求的速度,那么您将不得不以 0.01 美元的价格执行 AUTH_ONLY,然后立即运行 void。 void 是必需的,也是使用 AIM API 完成的。

【讨论】:

谢谢。我实际上正在阅读您的博客文章,但似乎 API 发生了一些变化。 看来如果卡号是对的,我以后可以输入任何有效期,它仍然接受卡。有没有办法不发生这种情况? 到期日期不一定是批准或拒绝交易的因素。因此,只要您输入一个未过期的到期日期,它就有可能被批准(假设没有其他因素会导致它被拒绝)。

以上是关于验证信用卡号(超出格式)的主要内容,如果未能解决你的问题,请参考以下文章

使用正则表达式验证信用卡号

信用卡号验证 用c++如何解决?

如何验证信用卡/支票卡号?

验证信用卡号

PHP信用卡卡号验证函数

PHP验证信用卡卡号函数