Odoo Help


How to properly account memberships / subscriptions with Odoo?

Peter Nietz
on 3/10/15, 10:30 AM 3,487 views

In our company we want to manage membership and subscription contracts with Odoo. The customer makes a contract with us that has a certain contract start date, but typically no explicit contract end date (until he terminates the contract). During the whole contract period the customer pays a monthly fee and in turn he is eligible to some service provided by us.

In order reduce administrative and accounting work the customer shall receive only exactly one invoice stating the monthly fee at the begin of the contract. This invoice states that the invoice amount is due/payable every month until the contract ends. This works since the monthly fee does not change over time (otherwise a new contract is made). Also this is perfectly legal here in Germany to have such invoices, I believe it is called "Dauerrechnung" (I don't know the English word).

How can I implement that pattern in Odoo?

The naive solution to simply create one invoice at the beginning of the contract and to register the monthly payments against it does not work for two reasons. First I can even not register the payment for the second month, since Odoo considers this invoice as fully paid. And second I can not change/edit the invoice amount, neither techically nor legally.

I have already found the tool "Generate recurring invoices automatically" from the module "Contracts Management". But as stated above we do not want generate a new invoice every month, neither manually nor automatically, due to the massive overhead in terms of administrative and accounting work (outside Odoo).

What other options do I have?

Any pointers are greatly appreciated.



Ermin Trevisan

--Ermin Trevisan--
| 6 5 7
Walchwil, Switzerland
--Ermin Trevisan--

Ermin Trevisan
On 3/16/15, 5:15 AM

I see only the way of recurring invoices.

If you want to reconcile your payments, you need open entries to balance. These entries are created with the automatic invoices. You do not have to print and mail the invoices though, just use them to post the customer payments to.

Unfortunately recurring invoices always create a new invoice document with a fresh invoice number in the journal. And this is exactly the thing we are trying to avoid. We imagine a special invoice type that periodically increases the debit of the partner, but for obvious (legal) reasons without changing the invoice amount itself. And if the debit of the partner increases every month (without having to create new invoices) we would had something the reconcile the payments against. Probably we could summarize that as follows: Is there a clever way to increases the partner's debit periodically by a certain amount? However there should still be a connection to the original invoice.

Peter Nietz
on 3/17/15, 3:37 AM

I do not really understand why you try to avoid new invoice numbers. In the overall process view including dunning management it is the easiest thing to do and it's automatically. For convenience purposes you could consider to build a model to create customer/contract sequence number, see this discussion: https://www.odoo.com/forum/help-1/question/changing-invoice-sequence-numbering-to-include-customer-reference-17213

Ermin Trevisan
on 3/17/15, 5:11 AM

Believe me, I personally would really prefer a simple out-of-the-box solution like the automatically created recurring invoices as well. But the management of my company strongly vetoes against that approach. They say it is problematic since we are talking about foreign trade business. For example we have to submit every single invoice to the bank in order to release the received payment (thank you, German law!). With some kind of "permanent, periodic invoice" we would have to do that only once for each contract, if we generate a new invoice every month we would have to do that every month for each contract. [Disclaimer: I don't know whether this factually correct, I'm not a legal expert, I'm just the poor software developer who shall implement it]

Peter Nietz
on 3/17/15, 5:30 AM

Ah, I see (but still do not really understand, but who understands banks anyway). Just as an idea, because the bank seems not to understand the term subscription contract, why don't you create a contract template which is titled something like "(Permanent) Invoice" instead of "Contract"? So your banks sees an "invoice" and you can use the standard recurring invoices facility in order to properly manage the sales and payment process.

Ermin Trevisan
on 3/17/15, 6:54 AM

The customer only wants to get one invoice with one invoice number... so all monthly payments will show that one invoice number... and will not match the monthly generated invoice numbers in Odoo, Basically the customer gets a contract that explains that he has to pay a monhtly subscription fee. The customer does not want to get a monthly invoice, because depending on the company the accounting department will have to get a new permission every month to pay the invoice, because it is a new invoice number and new invoice every month. With the subscription approch there is only one contract and invoice that tells the customer to make monthly payments until the customer decides to cancel the subscription.

Peter Nietz
on 3/17/15, 7:49 AM

You do not send these monthly invoices to the customer nor to the bank. You just keep them for your internal reconciliation of the payments.

Ermin Trevisan
on 3/17/15, 8:34 AM

Thanks for the hints. Now my problem is to convince our management of this approach. Surely this will be a tough job as they are really sceptical. But I'll try...

Peter Nietz
on 3/20/15, 6:10 AM

As far as I could see the "Dauerrechnung" can be questionable, see http://www.lexware-verbindet.de/index.php?action=printpage;topic=6118. And it is not more efficient from an administrative or software-technical point of view. It is a fact, the business case is the case of contract-based recurring invoice, and that's the way, most software is built for. Anything else might be something from the times, when invoices were written with a typewriter :-)

Ermin Trevisan
on 3/20/15, 9:46 AM
Rohit Thakral
On 3/16/15, 6:57 AM

Interesting requirements Peter. In order to give you a proper answer can you explain if you don't want open invoices what would you log the payment against?

If this is done by another accounting system in Germany how do they achieve it?

This is indeed a very good question. I guess such invoices with periodic payments would remain always open, unless the according contract is finally terminated. Maybe these special invoices would need an additional state for "all fees paid, waiting for next monthly fee".

Peter Nietz
on 3/17/15, 3:32 AM

About This Community

This platform is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.


Odoo Training Center

Access to our E-learning platform and experience all Odoo Apps through learning videos, exercises and Quizz.

Test it now

Question tools

4 follower(s)


Asked: 3/10/15, 10:30 AM
Seen: 3487 times
Last updated: 8/16/16, 9:01 AM