Skip to main content

Compensate advance payments from invoices

Project description

Odoo Community Association

Account Invoice Advance Compensation

Beta License: AGPL-3 OCA/account-invoicing Translate me on Weblate Try me on Runboat

This module provides a comprehensive solution for managing advance payments and their compensation in Odoo. It enables businesses to efficiently handle prepayments and their application against regular invoices through a user-friendly interface.

Key Features:

  • Dedicated advance payment tracking for both customers and suppliers

  • Flexible compensation wizard for applying advances against invoices

  • Automatic reconciliation of advance payments with regular invoices

  • Configurable advance payment journals

  • Multi-currency support for advance payments

The module streamlines the advance payment process by providing a structured workflow for recording, tracking, and compensating advance payments, ensuring accurate financial records and improved cash flow management.

Table of contents

Use Cases / Context

Module Context and Implementation Guide

When to Use This Module

This module is particularly valuable for businesses that:

  • Regularly process advance payments from customers or to suppliers

  • Need to track prepayments separately from regular invoices

  • Require precise reconciliation of advances against final invoices

  • Operate in project-based or milestone-payment environments

Key Implementation Scenarios

Customer Advances
  1. Service Retainers

    • Track client deposits against monthly service invoices

    • Example: Law firm applying retainer payments to monthly bills

  2. Product Deposits

    • Manage customer down payments for goods

    • Example: Manufacturer applying 30% deposit against production order

Supplier Prepayments
  1. Material Purchases

    • Track and apply prepayments to supplier invoices

    • Example: Construction company managing material prepayments

  2. Service Contracts

    • Reconcile advance payments to contractors

    • Example: IT firm managing vendor retainers

Technical Context

Prerequisites
  • Odoo Accounting module installed

  • Properly configured Chart of Accounts

  • At least one journal marked as “Advance Journal”

Integration Points
  • Works with standard Odoo invoicing workflow

  • Extends the account.move model

  • Compatible with:

    • Odoo’s native multi-currency

    • Multi-company setups

    • Standard reporting features

Configuration

Configuration Guide

Core Setup

1. Journal Configuration

Path: Accounting → Configuration → Journals
For new journal:
  1. Create → Type: Miscellaneous

  2. Name: “Advance Compensation”

  3. Code: ADV

  4. Default Account: [Select prepayment account]

  5. Advanced Settings → ☑ Is Advance Journal

2. Prepayment Accounts

Path: Accounting → Configuration → Chart of Accounts

  • Customer Advances:

    • Type: Current Assets

    • Name: “Advances Receivable”

    • ☑ Allow Reconciliation

  • Supplier Advances:

    • Type: Current Liabilities

    • Name: “Advances Payable”

    • ☑ Allow Reconciliation

3. Advance Product

Path: Inventory → Products

  • Name: “Advance Payment”

  • Type: Service

  • Accounting:

    • Income/Expense: [Linked to prepayment account]

Usage

This module allows you to manage advance payments and their compensation against regular invoices. It supports both customer and supplier invoices, with multi-currency capabilities.

Step-by-Step Process

1. Recording an Advance Payment
  1. Create a new invoice with the “Advance” product

  2. Register the complete payment for the advance invoice

  3. The advance will be available for compensation once fully paid

2. Applying Compensation
  1. Open the regular invoice (must be for the same partner)

  2. Click the Compensate Advance button

  3. In the compensation wizard:

    • Select available advance(s) from the left panel

    • Choose invoice lines to compensate on the right

    • Enter the compensation amount

  4. Click Compensate to apply the compensation

Key Features

Supported Scenarios
  • Customer and supplier invoices

  • Partial compensation of advances

  • Multi-currency transactions

  • Multiple advance compensations per invoice

Prerequisites
  • Advance invoice must be fully paid

  • Regular invoice must be for the same partner

  • Accounts must be reconcilable

  • Proper journal configuration

Troubleshooting

Common Issues

  1. Advance not appearing in compensation wizard

    • Verify the advance invoice is fully paid

    • Check if the partner matches

    • Confirm journal settings are correct

  2. Compensation not working

    • Ensure accounts are properly configured

    • Check currency compatibility

    • Verify user has necessary permissions

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed feedback.

Do not contact contributors directly about support or help with technical issues.

Credits

Authors

  • Escodoo

Contributors

Maintainers

This module is maintained by the OCA.

Odoo Community Association

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

This module is part of the OCA/account-invoicing project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file odoo_addon_account_invoice_advance_compensation-18.0.1.0.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for odoo_addon_account_invoice_advance_compensation-18.0.1.0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 5a32ff27418013cb66c7e6dcfda37c4bad793e25a2a64b321da4d8e7b9684de7
MD5 7b9bac6ec72ee3462bb6f48f285096fb
BLAKE2b-256 9fd2811ba91b4cb73ea90baf8eb78f71cf424f36799f56f227dfb6cbc11974e2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page