Hello,
for my subscription site this module seems almost perfect, but I need correct creation of Ubercart Orders with correct amounts, because customers need to view and download their invoices, including taxes. Also I want to use the Ubercart backend for tax reporting.
After some thinking, I can think of two different cases for Order creation:
1. The recurring payment is repeated a limited number of times
In this case it makes sense to book all renewal fees to the ORIGINAL ORDER as it is now. The user would get a single invoice for the whole purchase, including all (monthly) fees. Only change would be to have paypal_buttons calculate the total amount of all renewal fees and set the order to that amount. That way the order would be balanced at the the end of the subsciption period.
2. The recurring payment is repeated endlessly, until canceled
This is the case on my site. Paypal_buttons should create a SEPARATE ORDER for each renewal payment. The process would be exactly the same as on first purchase. On each renewal customers would get a separate order, a separate invoice including taxes, and roles would be renewed (as they are now).
Does this make any sense?
I would definitely sponsor implementation of the second case, if someone has time to do it??
Comments
Comment #1
ju.ri commentedAfter some more thinking, I actually find "case 1" from above to be nonsense.
On a subscription site, it is just logical to receive an invoice after each payment, rather than one invoice for several payments.
So my proposal would be to just create a new Ubercart order for each recurring payment, in the exact same way as for the initial purchase.
That should take care of correct accounting and invoicing in any case.
Comment #2
mrtoner commentedAlthough I considered marking this a duplicate of another issue (#1090690: For subscriptions I need an order to be created for each renewal done, is there any way to do it?), it may be worthwhile leaving it open for further consideration. I personally don't want separate orders entered for every single subscription payment, which is why this module was designed this way. However, there may be some compromise between accumulating multiple orders and having a separate accounting of payments.