6

我正在使用 ActiveMerchant 开发 Ruby on Rails 应用程序的计费组件。我们选择的支付网关是PaymentExpress

我看到的代码示例如下所示,使用authorize()void()测试卡的有效性:

def test_card!
  auth_response = gateway.authorize(100, card)
  gateway.void(auth_response.authorization) if auth_response.success?
  raise AuthorizationFailed.new(auth_response) unless auth_response.success?
end

但是,PaymentExpress 不支持 void 操作。考虑到诸如 PaymentExpress 之类的网关在 7 天后授权请求到期,是否有其他方法可以执行此授权操作,或者是否可以省略无效操作?

我在文档或 Google 中找不到任何提及void授权,也找不到任何迹象表明授权的重要性。

一些帮助?

4

2 回答 2

2

一些卡处理商会将此类交易标记为潜在欺诈。他们不喜欢看到小型测试交易之后是大型交易。特别是美国运通在这方面有些激进,因为当您返回并尝试实际金额时,他们往往会拒绝交易。

如果您打算向客户收取金额x,那么您应该授权它金额x以验证卡。然后您可以使用之前的授权并进行捕获或强制发布以完成收费。这样,客户只会在他们的对帐单上看到正确的待处理和结算金额。

于 2009-01-24T22:08:01.557 回答
2

事实证明,至少使用 PaymentExpress,他们会在卡存储过程中自动执行授权操作。如果授权失败,它根本不会存储卡,而是返回“INVALID CARD”。这可以在他们的交易搜索网络应用程序中看到——在存储卡时,卡上授权 1.00 美元,一周后自动失效。

于 2009-02-09T05:08:05.607 回答