Forum Moderators: coopster

Message Too Old, No Replies

integrate multiple payment vendors as modules

         

bkeep

4:40 am on Nov 18, 2009 (gmt 0)

10+ Year Member



I am working on a billing/packages module currently and have hit a mental roadblock.

The billing/packages module I am working on needs the ability to use multiple payment vendors, but I am running into a snag. Every vendor has their own specific api, that in itself isn't an issue. My issue amounts to, what do you guys/gals do when keeping track of each vendors specific options? PayPal uses an email and 2checkout uses a vendor id etc etc.

I want each vendor to be configured via an admin control panel. For instance, I have 2checkout and PayPal and the idea is, it should be easy in the future to drop in additional payment vendors with minimal hassle to the end users or site admins.

Currently what I am doing is creating a folder with a config file but this seems messy. When I think about adding entries into the db it starts to look the same way. I have been looking through some opensource carts for ideas but these seem way more complex than what I am trying to do. There is no hard product, it is simply a subscription or one time virtual product.

I would just like some advice, possibly some good reading on application design regarding payment systems, or maybe a good class that is available. I also do not plan on keeping ANY cc info in the db everything will be passed off to other payment processors and then get a return verification.

A fresh perspective may be what I need to get my head wrapped around this. Thanks for any info.
Regards,
Brandon

dreamcatcher

7:06 pm on Dec 30, 2009 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



Hi Brandon,

I`m actually coding an e-commerce system myself and will probably run into this issue. Did you have any luck with this? You could download some of the free open source cart systems and see how they do it.

dc

TheMadScientist

12:13 am on Dec 31, 2009 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member Top Contributors Of The Month



I've looked at this one a couple times and figured someone else would answer so I held off for a bit, but have been working with carts, etc a bit lately and although I haven't addressed this specific question I'd probably be inclined to put them in a DB col called VendorKey, which would either be the e-mail address or the vendor id or whatever 'key' I need to use to process an order with the specific vendor.

It's the 'cleanest', 'easiest' way I can think of anyway... You could just have a vendor table and store everything in there 'generically', because AFAIK they all require about the same information to process a transaction even if they don't call it the same thing.

Processor ID ¦ Processor Name ¦ Vendor Key ¦ Variables to Send (Maybe?) ¦ Notes about Processor (Maybe?)