Does anyone have any experience with how to allow multiple payment methods so that more payment methods can be added in the future thus creating a scalable design?
I have implmented Paypal express checkout using Activemerchant in my application, however I didn't make it an abstracted design so that future payment methods could be added with ease.
Please point me to any example / existing project that may have such design or provide any insight to this problem. Thanks in advance!
P.S. This is regarding to the design and the relationships of the classes, rather than how to implement the payment gateway.
I'd recommend ActiveMerchant: http://activemerchant.org For building integrated, multi-payment systems in rails.
Even if you want to roll your own, you an get the source code for this project and see how they did it to get some ideas.