0

我实施了贝宝快速结帐并且工作正常,但我不得不将其更改为网站支付专业版。我切换到网站支付专业版并设置了所需的一切,但始终将“无效的信用卡号”显示为错误消息。

我的development.rb文件有以下代码

ActiveMerchant::Billing::Base.mode = :test
::GATEWAY = ActiveMerchant::Billing::PaypalGateway.new(
  :login => "seller_1280588868_biz_api1.hotmail.com",
  :password => "1290567879",
  :signature => "AZjEOuZ30SjjtX25uAhHyqYeodXnAi.tdG6i-gpZB1dBn2t876XYhKdE2"
)

我使用下面的代码来生成信用卡并验证

def validate_card
    unless credit_card.valid?
      credit_card.errors.full_messages.each do |message|
        errors.add_to_base message
      end
    end
  end

  def credit_card
    @credit_card ||= ActiveMerchant::Billing::CreditCard.new(
      :first_name => first_name,
      :last_name => last_name,
      :type => card_type,
      :number => card_number,
      :verification_value => card_verification,
      :month => card_expires_on.month,
      :year => card_expires_on.year
    )
  end

我真的不明白为什么会出现这个错误。我认为我做的一切都是正确的。我已经输入了贝宝的沙盒账户信用卡号。

我正在使用 rails 3.0.0、ruby 1.9.2 和活跃的商人 1.12.0。

4

1 回答 1

0

终于在这上面花了半天时间。错误是我只使用了最后 4 位有效数字而不是全部 16 位,因为贝宝在我的信用卡列表页面上只显示最后 4 位数字。现在它正在工作,因为我使用了所有 16 位数字。

感谢大家的关注/意见。

于 2011-05-02T10:40:03.083 回答