2009-06-16 6 views
2

Je suis en train de mettre en place un site de rails qui acceptera les cartes de crédit avec ActiveMerchant et PayPal Website Payments Pro. Je suis en train de tester avec succès sur le sandbox PayPal, mais je dois aussi pouvoir tester sur mon site en direct. Je souhaite mettre en place une solution par laquelle les inscriptions sur mon site en ligne avec les adresses e-mail de mon propre domaine utilisent le sandbox PayPal, mais pour tous les autres, il utilise le site PayPal en ligne. De cette façon, quand je teste mon site en je ne paie pas moi-même et s'imposé par PayPal dans le processus :-)Accepter des cartes de crédit factices sur un site en ligne avec ActiveMerchant et PayPal

Le problème, cependant, est que pour obtenir ActiveMerchant d'utiliser les serveurs de test que vous écrivez cette ligne:

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

qui définit une variable de classe qui s'appliquera à d'autres opérations sur le site, quand je veux simplement une transaction pour cibler les serveurs de test.

Quelqu'un peut-il suggérer une solution élégante? Ou y a-t-il de meilleurs moyens d'y parvenir que la solution que j'ai en tête?

Répondre

4

Il est toujours dangereux de laisser une porte dérobée ouverte. Je recommande de ne pas exécuter votre environnement de production contre le bac à sable en aucune circonstance. Si vous devez effectuer un test ocassional, faites-le contre l'environnement PayPal en direct et effectuez un remboursement immédiatement - pas de problème et pas de frais.

+0

Je ne sais pas quelles sont les limites pour PayPal, mais quand je fais des sites e-commerce et que j'ai besoin de tester (j'utilise Authorize.Net), je fais juste une transaction en direct sur un montant arbitrairement bas ($ 0.01) carte. Pas cher et facile. –

+0

Excellente idée - c'est ce que j'ai fait. Maintenant, les utilisateurs avec @ my-domain.com reçoivent un prix de 0,01 $ pour mon produit, et je peux tester le pipeline de commande en direct de bout en bout avec un boîtier spécial minimal. – esilver

+0

Une autre option consisterait à retirer tous les boîtiers spéciaux et à débiter votre carte de crédit comme vous le faites pour tous les autres clients, et à simplement rembourser une fois le paiement effectué. Cela ne vous coûtera rien - pas même un centime! - parce que Paypal rembourse les frais. – Olly

Questions connexes