Availability |
Odoo Online
Odoo.sh
On Premise
|
Odoo Apps Dependencies |
•
Invoicing (account)
• Discuss (mail) |
Lines of code | 625 |
Technical Name |
account_payment_advance_mac5 |
License | OPL-1 |
Website | https://apps.odoo.com/apps/modules/browse?author=MAC5 |
Versions | 9.0 10.0 11.0 12.0 13.0 14.0 15.0 16.0 17.0 18.0 |
Advance Payments
Way to create advance payments for specific account and apply them later on invoices
Features:
- New Advance Payments menu
- Apply advance payments later on customer invoices or vendor bills
- The true advance payment! Uses a different account to record advances, rather than Accounts Receivable and Payable
- Multiple currencies are supported
- Multiple advance payments can be applied to multiple invoices / bills
- Limited Spanish translation
Configurations
Create new Accounts for Advance Payments

Create new accounts to be used for customer and vendor advance payments in Accounting > Configuration > Accounting > Chart of Accounts. Make sure that the created account is used for advance payment and reconcilable.
On my example, I created Unearned Revenue which is a liability to be used for customer advance payments.
Create new Journal for Advance Payments
Create new journal to be used for customer and vendor advance payments in Accounting > Configuration > Accounting > Journals. This new journal will be used when advance payment is applied on invoices.

Set Default Configuration for Advance Payments

Set default configuration for the advance payments in Accounting > Configuration > Settings and set the advance payment account and journal that will likely be used often.

Configure Bank Journal Payment Methods
Make sure that the payment methods used for advance payments have both Outstanding Receipts and Outstanding Payments accounts configured. To do this, go to Accounting > Configuration > Accounting > Journals, select the relevant Bank Journal, and under the Incoming Payments and Outgoing Payments sections, fill in the Outstanding Receipts Account and Outstanding Payments Account, respectively.

Procedures
Create new Advance Payments




Create new customer advance payments in Accounting > Customers > Advance Payments (or create new vendor advance payments in Accounting > Vendors > Advance Payments).
Select the Customer (or Vendor), Payment Journal and Payment Amount. Set also the Payment Date when the customer (or vendor) has paid. If you set the default configuration for advance payment account, the default will be shown unless you need to change it. Save the advance payment as draft or confirm it so that it will be posted.
Posted advance payment can now be used to apply advance payments on invoices.
Posted advance payment will also create journal entry such that the accounts are based on the selected Payment Journal and Advance Payment Account.
Application of Advance Payments on Invoices
To apply advance payments on customer invoices (or vendor bills), select an Posted status invoice on Accounting > Customers > Invoices (or Accounting > Vendor > Bills).
If the customer (or vendor) has advance payment, there will be a button named Apply Advance Payment on the invoice header. If there is no button shown, it means that customer (or vendor) has no advance payments, advance payments have already been applied or invoice is already paid.
On the Apply Advance Payments window, specify the Application Journal, the default will be the configured Advance Payment Journal in settings. Select the application date and advance payments to apply. TIP: You can select multiple advance payments and you can also select multiple invoices on the invoice list.
When applied on the invoice, payment will be shown below the invoice Total and in Advance Payments tab. TIP: You can unreconcile the payment by using the icon below the invoice Total but just make sure that the Advance Payment Journal is allowed on cancelling entries.
Application of advance payment on invoices will create a journal entry such that the accounts are based on the invoices account and advance payment account on payments. The amount (debit or credit) is the total of all advance payments applied.





Compatibility
This module is compatible with Odoo 16.0 Community and Enterprise Editions
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module
Report comment
Any abuse of this reporting system will be penalizedThere are no ratings yet!
So if the invoice to be paid is for example 400, you can just use the 150 from the advanced of 200 to be paid partially then the invoice would have only amount due of 250?
Re:
Hi Gomez,
That is not possible. Workarounds are:
1. You can create 2 advance payments (150 and 50)
2. You can pseudo pay the invoice by 250 then apply the advance payment and then cancel the payment for 250
Regards,
if you have an advanced payment of 200, can you select just 150 from available amount ?
and then you would still have that payment with just 50 to use later?
Re:
Hi Gomez,
Yes, you can do that as long as the invoice to be paid is 150, it will only used the 150 available amount of the advance payment of 200 and the other 50 can be applied later for another invoice.
Hi Do you also have for Vendor deposits?
Re:
Hi Kat,
You can also use this module for vendor advanced payments / deposits.