frappe / erpnext

Free and Open Source Enterprise Resource Planning (ERP)
https://erpnext.com
GNU General Public License v3.0
21.11k stars 7.23k forks source link

Recurring subscription sales invoice auto payment #11239

Closed jwrober closed 2 years ago

jwrober commented 7 years ago

From here - https://discuss.erpnext.com/t/recurring-subscription-sales-invoice-auto-payment/29481

Looking for an automatic repeatable payment process of some kind in order to handle recurring payments that happen on some cycle (e.g. monthly).

rasos commented 6 years ago

ERPnext offers a recurring subscriptions feature. Those can be currently applied manually e.g. on invoices or sales orders. Automated payments would require three additional features:

  1. buyer should be able to add a subscription with sales orders in the shopping cart, e.g. containing a recurring services (such as a monthly hosting fee)
  2. a recurring sales order should automatically trigger an automated payment process, if initial payment was done e.g. via PayPal or Stripe
  3. API call on article (e.g. called by hosting infrastructure), if specific user has a valid subscription
dagors commented 6 years ago

It will be necessary for the client to create a payment account within ERPNext, which allows the addition of multiple Credit Cards (Cardholder Information + Credit Card Data) and / or electronic wallet credentials such as PayPal.

With the available accounts the client can choose which one to use to enable recurring payments or automatic debit. I suppose it will be necessary to consider security issues for the handling of this information as Token Storage.

maxwelljvogel commented 5 years ago

Anybody know if this is possible yet in ERPNext?

debianmaster commented 5 years ago

Hello, Is this possible now in 2019 :D

dealproc commented 4 years ago

Any more updates in 2020 for this?

dealproc commented 4 years ago

In order to facilitate this, we may want to have a deeper dive into how recurring invoices are processed. I can see two modes of payment here:

User Subscription

In the User Subscription scenario, the Customer is myself. When my user is created within the system for the first time, a new Customer would be created that is linked to my login.

Company Subscription

In the Company Subscription scenario, the Customer is the company I represent.


In both cases, I would like to, from within my personal portal, manage the payment methods per-customer. This allows me to manage my payment methods, or the payment method(s) of the company(ies) that I have subscriptions with.

Once this is decided, the next step would be to use the hosted form from the gateway of choice to capture the card information, and have the gateway provide a token back to represent the card. (This relieves most of the concerns with PA-DSS/PCI-DSS). The recorded payment methods could be displayed within the system so that I as the user can manage them.

If someone can give me guidance on how to do this, and contribute it back (I know there's a PR for Authorize.NET)... I'd like to take a look at USA ePay as another gateway. For me personally, it's been a gateway of choice since 2012.

We would possibly too want to do a little research to see if the payment gateway of choice can provide a report from the recurring billing to allow us to update the system, rather than having the system perform the transaction. It is far easier to manage the posting of payments that have happened than it is to manage acquiring the payment to begin with. In the former, you at least have the $$ to keep in business. In the latter, you may not get your $$ in, which can be quite painful.

dealproc commented 3 years ago

I've been contemplating this since my last post (above) and I am wondering if this can be done using portal page(s)? Since there is access to most, if not all, of the data from NEXTErp that can be utilized for building portal pages, it would seem that I should be able to encode the user cards, etc. Thoughts?

harshit-30 commented 2 years ago

Use Auto Repeat feature.