Odoo Help


How to require advance payment to be paid before accepting order

on 4/25/13, 7:49 PM 21,590 views

How can I make OpenERP require an advance payment of 50% before accepting an order involving production? It should essentially somewhat work the same way as the Invoice policy: "Pay before delivery", however, the invoice shall not be created until the product has been produced and accepted by the client which is required to pay the second half before receiving the product.




| 5 4 7
Baarn, Netherlands
On 4/26/13, 7:05 AM

Advance payment is usually done by ProForma invoice.

But you can only create an invoice, when the order is definit (so it is NOT an offer).

If you want to get a payment in advance of an order, you have to create a payment term, and specify that 50% has to be done in advance. I do not know where to find that in V6, in V7, it is Accounting -> Miscellaneous -> Payment Terms.

I am under the impression that in this case you still have to have an order, not an offer.

Hopefully this is enough for you to get started.

Ok, Thanks! I will look into it, and it certainly seem correct since it is a step between "draft" and "confirmed".

on 4/26/13, 1:08 PM

It was certainly enough to get me started, it mostly works now except that it does not use the percentage specified to create the invoice amount. I expect it not to be hard to make that happen, but wonder if I need to pass the values needed when clicking the "Advance invoice" button or if maybe the reference to the order still is available on the "Advance invoice" form? Also I notice that the invoice amount will cause another invoice to be made which add tax on top of whatever amount I add.

on 4/26/13, 5:12 PM

michel Guénard

--michel Guénard--

| 5 5 8
--michel Guénard--

VP operations & finance Social entrepreneur Certified Public Accountant Past Chief internal auditor

michel Guénard
On 5/13/15, 1:29 PM

We require an advance payment for low priced products which must be purchased to satisfy our customers.

This happens at the Point of sale level.

The solution we put in place:

Create a product called "Prepayment on future order"; this product is declared as sellable at the point of sales; with no applicable tax. The pricing is set to one euro.

The accounting entries for this transaction are

  1. Debit a cash account (one of the cash method available at the POS; (Petty cash or Check or Credit card for instance)

  2. Credit a Customer account called "Customer prepayments received"  (parent account being Customers or receivable).

A Payment receipt is printed and given to the customer.

At the time the sale is made, the standard transaction is done with applicable tax.

The payment must take into account the initial prepayment (the customer is requested to provide the receipt) and the balance

Thus the methods of payments at the POS level must have an additionnal method called "Prepayment received"

The cashier has 2 payment lines to use: the prepayment and any other payment method (Petty cash or Check or Credit card for instance).

The Prepayment method creates the following accounting entry:

  1. Debit the Customer account called "Customer prepayments received"

  2. Credit the standard customer accounts (which is debited by the sale transaction)

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

3 follower(s)


Asked: 4/25/13, 7:49 PM
Seen: 21590 times
Last updated: 8/21/17, 5:59 AM