Принятие фиктивных кредитных карт на реальном сайте с ActiveMerchant & PayPal - PullRequest
2 голосов
/ 16 июня 2009

Я настраиваю сайт рельсов, который будет принимать кредитные карты с ActiveMerchant и PayPal Website Payments Pro. Я успешно тестирую против песочницы PayPal, но мне нужно иметь возможность тестировать и на своем живом сайте. Я хотел бы реализовать решение, при котором при регистрации на моем действующем сайте с адресами электронной почты из моего собственного домена используется песочница PayPal, но для всех остальных он использует действующий сайт PayPal. Таким образом, когда я тестирую свой действующий сайт, я не оплачиваю себя и не облагаю налогом PayPal в процессе: -)

Однако проблема в том, что для того, чтобы ActiveMerchant использовал тестовые серверы, вы пишете эту строку:

ActiveMerchant::Billing::Base.mode = :test

Это устанавливает переменную класса, которая будет применяться к другим транзакциям на сайте, когда я просто хочу, чтобы одна транзакция предназначалась для тестовых серверов.

Кто-нибудь может предложить элегантное решение? Или есть ли лучшие способы для достижения этой цели, кроме решения, которое я имею в виду?

1 Ответ

4 голосов
/ 16 июня 2009

Всегда опасно оставлять черный ход открытым. Я бы рекомендовал не запускать вашу производственную среду против песочницы при любых обстоятельствах. Если вам необходимо выполнить случайный тест, проведите его в реальной среде PayPal и немедленно обработайте возврат - без суеты и без оплаты.

...