active_merchant: поле было длиннее или короче, чем позволяет сервер - PullRequest
0 голосов
/ 16 сентября 2011

Я осуществляю прямую оплату через PayPal через Activemerchant. Ниже приведен код

def credit_card_details
    credit_card = ActiveMerchant::Billing::CreditCard.new(
                :first_name         => 'Bob',
                :last_name          => 'Bobsen',
                :number             => '4242424242424242',
                :month              => '8',
                :year               => '2012',
                :verification_value => '123')

    errors.add(:expire_year, "Credit card expired") if credit_card.expired?
    errors.add(:cc_number, "invalid credit card details") unless credit_card.valid?

    if credit_card.valid?
      # Capture $10 from the credit card
      amount = 1000
      response = PAYPAL_GATEWAY.purchase(amount, credit_card)

      if response.success?
        puts "Successfully charged $#{sprintf("%.2f", amount / 100)} to the credit card #{credit_card.display_number}"
      else

        raise StandardError, response.inspect
      end
    end
  end

Я пытался указать другие данные кредитной карты, но эта ошибка вызывала сообщение «Поле было длиннее или короче, чем позволяет сервер». Поэтому я заменил детали cc данными, указанными на странице github active_merchants, до сих пор не повезло. Я не понимаю, что не так?

1 Ответ

0 голосов
/ 21 июня 2013

Я думаю, что вы пропустили тип_карты или ветку.Один из этих двух устарел.Попробуйте и посмотрите, что работает.Так как вы пропустили тип кредитной карты, возможно, поля выровнены неправильно или сопоставлены неправильно.

...