Stripe: «Ваш запрос был в тестовом режиме, но использовал не тестовую карту»

#ruby-on-rails #heroku #stripe-payments

#ruby-on-rails #heroku #stripe-платежи

Вопрос:

Недавно я сменил свои учетные записи Stripe и в процессе также переключился с тестовых на живые. Я постоянно получаю сообщение об ошибке от Stripe, когда отправляю настоящую кредитную карту для оплаты:

 StripeResponse.error.message = "Your request was in test mode but used a non test card"
  

Проверка переменных:

 $ heroku config -r production
>> ...
STRIPE_API_KEY:              sk_live_XXXXXXXXXXXXXX
STRIPE_PUBLIC_KEY:           pk_live_XXXXXXXXXXXXXX
  

Значения этих ключей соответствуют значениям в моих настройках Stripe. Моя панель управления Stripe также переведена в режим реального времени. Похоже, в моем приложении что-то осталось с тех пор, как я тестировал, но я не могу понять, что это.

Что может указывать Stripe на то, что я нахожусь в тестовом режиме?

Ответ №1:

Убедитесь, что вы используете свой текущий ключ API

 heroku run console
  

После подключения к консоли

 puts Stripe.api_key
  

Соответствует ли результат вашему ключу live API?

Комментарии:

1. Я проверил это в своих настройках Heroku, и это действительно живой api и доступные для публикации ключи. Возможно ли, что панель мониторинга неверна?

2. Прояснил мой первоначальный вопрос.

3. Вы перезапустили свои операционные системы Heroku (или перераспределили) после обновления ключей API?

4. Я перераспределял около дюжины раз в процессе отладки, так что да.

5. Может быть, он использует жестко закодированный ключ откуда-то еще? Вы убедились, что Stripe.api_key в консоли heroku отображается правильный ключ?