Idea - unified payment api

Events happening in the community are now at Drupal community events on www.drupal.org.
sharique's picture

My idea is about having a unified payment api for Drupal. It useful for site which does not need e-commerce features but need some kind of payments from members like subscriptions based membership, paid nodes, donations,... etc.
Currently what we have is support for either specific gateway, or we need to install e-commerce modules get these functionality.
This module will be split into 2+ parts, one is front-end which will do all ui work and another will be beckend module that will interact with payment gateway. One or two payment gateway support will be included in it, other will be support via sub-modules.

Lm-paypal can be a good starting point for it.

Comments

Hello, Sharique, I think

rszrama's picture

Hello, Sharique, I think you're on the right track, and you might consider looking at http://drupal.org/project/pay. One problem I see, though, is that the minute you make a front-end, you're either going to end up with an insufficient UI or a simple e-commerce system without a shopping cart (a use case which Drupal Commerce is already taking into consideration).

I see the problem like this...

  • A Payment API could be good on its own, but in order to be useful it has to be used...
  • For the module to get used, it either needs to provide a UI or plug-in to an existing e-commerce system...
  • But the second it provides a UI, it becomes another e-commerce system and has to become increasingly complex on its own...
  • And if you're going to plug-in to existing systems, then it's now both an API module and a drop-in replacement for other payment APIs, so it has to accommodate the various system-specific features of whatever it's replacing.

Ryan, I hear what you're

liberatr's picture

Ryan, I hear what you're saying, but I think you're putting a lot of stress on the UI portion. The UI really only needs to be a nonce implementation. See: Token module's tokenSTARTER.module

I think the interesting use cases here will be non-product implementations - donations, like ChipIn, Kickstarter, etc. Things that allow an individual or product to try and add funds toward some sort of goal. Or perhaps if a webmaster tries to raise funds to keep paying for the webserver.

Yeah, I was mostly focusing

rszrama's picture

Yeah, I was mostly focusing on that because it seemed to be a big part of his pitch,

"This module will be split into 2+ parts, one is front-end which will do all ui work and another will be beckend module that will interact with payment gateway."

However, even if you're doing a "simple" UI like donation tracking, you're having to define forms to collect payment, present transactions for management by administrators, provide a transaction history for users, and do some aggregate reporting. That said, the displays at least don't have to be much more than a set of default Views... one that's filtered and accessible by uid and one that's filtered for administrators only. Even then, I'd still wonder if that sort of UI isn't better suited to an e-commerce system with more time spent making the payment API itself better (i.e. establishing APIs for various payment systems, building appropriate hooks / Rules integration, etc.).

primarily for non-e-commerce

sharique's picture

Idea is to make it primarily for non e-commerce use, like Ryan Prince says. There are times when you need some payments from users, for that e-commerce modules are not suitable. Also installing e-commerce also added headache to site admin.
Szrama you make a point about splitting it into 2+ modules. I say this because it should be plug-able. If we make a backend module it will be easier to add other payment gateways.

I'll like to leave it student to decide the final arch of module.

Sharique Ahmed Farooqui

Well, my point is just that

rszrama's picture

Well, my point is just that the moment you start talking about a UI, especially with forms and displays exposed for end users, you're making this into an e-commerce system. If you're taking money through a website, the data can't just disappear into a blackhole and will likely need to be retrieved by "customers" at a later date. So, what you're describing moves from a payment API (like http://drupal.org/project/pay) to an "E-commerce Lite."

That said, I don't have any desire to see someone not do work in this area if they want to and Google is willing to pay for it. : P

I'm working on a similar module

laQu's picture

Hi, Sharique, have you already started working on this idea?

Your idea here is exactly what I need for one of my projects. I actually started making modifications to the lm_paypal -module already.. I am planning to make one module for handling paid subscriptions (like lm_paypal_subscriptions) and one to work as an API between different payment gateways and the subscriptions module..

How does one subscribe to a

mghatiya's picture

How does one subscribe to a thread without actually posting in it? :(
I want to subscribe to this one. How come Drupal lacks in such small bits? e.g. The button down there for "post" actually says "save". Why?

Google Summer of Code 2010

Group organizers

Group categories

Important Announcement

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: