[ic] Interchange Vend::Payment and Business::OnlinePayment

Mike Heins interchange-users@icdevgroup.org
Tue Sep 17 11:20:11 2002


Quoting ivan-interchange-users@420.am (ivan-interchange-users@420.am):
> Hi,
> 
> I'm the current maintainer of Business::OnlinePayment, a set of related
> CPAN perl modules for processing payments with different online
> gateways: http://420.am/business-onlinepayment
> 
> After writing backends for half a dozen gateways, I think I'm ready to
> take a stab at an overhaul fixing the base class itself, hopefully in
> cooperation with others - http://420.am/business-onlinepayment/ng.html
> 
> One thing that I think is very important to the success of this effort
> is buy-in from the Interchange folks.  Instead of continuing to write
> your own Vend::Payment modules, I'd like to invite Interchange to
> participate in the Business::OnlinePayment effort - the gateway backends
> you write would be uploaded to CPAN and useful to other folks, and the
> gateway backends myself and others write would be available to
> Interchange users.
> 
> What would be necessary to get the official support of Interchange for
> this project?  I'm completely willing to contibute my development
> time to making this happen, design the new API for Interchange's
> needs, and so on.  Please let me know.

Stability. My main worry in using a master payment class outside of
Interchange is that it would be installed every time a system was
updated, and there would be the potential for problems being introduced
due to version change, particularly with large numbers of
independently-maintained modules.

Also, I like the idea of a result hash that is available so that
we can carry past payment status runs in our session for diagnosis.
I would want that added where it is available.

Probably a lot of people would want it just for the LinkPoint.
If CSI offices hadn't spammed me several hundred times over years that
one might have been in Interchange already....

> 
> As I see it, the stages in this migration would be:
> 
> 1. Write a Vend::Payment::BusinessOnlinePayment (or similarly named)
>    class which is a wrapper around Business::OnlinePayment.  This would
>    allow Interchange to immediately support all the gateways that
>    Business::OnlinePayment supports.
> 
> 2. Direct folks interested in adding new gateways to write
>    Business::OnlinePayment modules instead of Vend::Payment modules.
> 
> 3. Lastly, migrate from the existing Vend::Payment gateway modules to
>    their Business::OnlinePayment counterparts, leaving only
>    Vend::Payment::BusinessOnlinePayment (or just incorporate everything
>    into Vend::Payment at this stage).
> 

Yes, seems the way to do it. I would want to keep the configuration
all in Interchange, though, with no external config files necessary.

> Again, I'm not asking for any code here, I'm willing to do the necessary
> patches myself.  What I'm looking for is the "buy-in" that yes, this
> would be acceptable to the Interchange powers-that-be, and also your
> requirements for making that happen, i.e.:
> 
> - Is some sort of "ownership" of this project by the Interchange folks
>   necessary?  Host it on your CVS, allow you to make releases of the
>   gateway modules, etc.?  Let me know.

No, I don't think so. Obviously if we were bringing in a gateway or
two from our code, we would have it for that. 

> 
> - Is the either/or with Crypt::SSL and Net::SSLeay a requirement, or
>   would you be happy to depend on just one?

I don't think that matters, but it is nice to work with either. 

> - What else would be required from Business::OnlinePayment for each of
>   the stages above?
> 
> Hoping I've piqued your interest.  :)
> 

Yes, personally I am interested. Payment gateways are best
written once. 8-)

-- 
Mike Heins
Perusion -- Expert Interchange Consulting    http://www.perusion.com/
phone +1.513.523.7621      <mike@perusion.com>

Being against torture ought to be sort of a bipartisan thing.
-- Karl Lehenbauer