Bỏ qua để đến Nội dung
Menu
Câu hỏi này đã bị gắn cờ
1 Trả lời
928 Lượt xem

How can I determine a specific account for return , in odoo it reverse the sales account in refunding i want to make an specfice account for returning 

Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất

To set a specific account for returns (refunds) in Odoo instead of reversing the sales account, you need to customize the refund accounting logic by configuring the journal and product settings. Below is a step-by-step guide:

1. Use a Specific Account for Returns at the Product Level

Odoo allows specifying different accounts for specific operations at the product level:

  1. Go to Products:
    • Navigate to Sales > Products or Inventory > Products.
  2. Enable Advanced Accounting Features:
    • Go to Settings > Accounting.
    • Enable Analytic Accounting and Accounting features if not already enabled.
  3. Configure the Product Categories:
    • Open the Product Category for the product you want to configure.
    • Under the Accounting tab, you will find:
      • Income Account (for sales revenue).
      • Refund Account (custom account for returns).
  4. Set a Specific Return Account:
    • Assign a specific account for returns in the Income Account for Credit Notes field (Odoo may call this Refund Account in older versions).
    • This ensures that any refund for products in this category will use the specified account.

2. Use a Specific Account for Refunds at the Journal Level

If you want to configure a specific return account globally for a journal:

  1. Go to Journals:
    • Navigate to Accounting > Configuration > Journals.
    • Open the journal used for refunds (e.g., Customer Refunds).
  2. Configure the Journal Settings:
    • Under the Advanced Settings tab:
      • Set a specific account for refunds in the Default Debit Account and Default Credit Account fields.
    • This ensures that the journal always posts refund entries to the specified account.

3. Adjust the Refund Process to Use a Custom Return Account

Odoo defaults to reversing the original sales account for refunds. To override this behavior:

Option 1: Use a Custom Credit Note Default

You can create a credit note template with a specific return account:

  1. Go to Accounting > Customers > Credit Notes.
  2. Create a draft credit note and manually set the return account for the lines.
  3. Save this as a template for future returns.

Option 2: Automate with a Customization

If you need this behavior automated for all refunds, a developer can modify the account assignment logic.

Here’s an example:

pythonCopy codefrom odoo import models, api

class AccountMove(models.Model):
    _inherit = 'account.move'

    @api.model
    def _reverse_move(self, default_values, cancel=False):
        # Call the original reverse function
        reversed_moves = super(AccountMove, self)._reverse_move(default_values, cancel)
        
        # Set a custom return account for refunds
        for move in reversed_moves:
            for line in move.line_ids:
                if line.account_id.user_type_id.type == 'income':  # Check if it's a sales account
                    line.account_id = self.env['account.account'].search([('name', '=', 'Returns Account')], limit=1)
        
        return reversed_moves

This code overrides the default reverse logic, replacing the sales account with a specific returns account for refunds.

4. Test the Setup

  1. Create a Sales Order and Invoice:
    • Generate a sales order and validate the invoice.
    • Post the invoice to check the sales account.
  2. Create a Credit Note (Refund):
    • Refund the invoice and verify that the specified return account is used.

5. Reporting and Analysis

Once the returns are correctly posted to a separate account, you can:

  • Use the Profit and Loss Report to analyze returns.
  • Filter or group by the returns account to understand the impact of refunds.

Conclusion

To determine a specific account for returns in Odoo:

  1. Configure Income Account for Credit Notes at the product category level.
  2. Set Default Debit/Credit Accounts at the journal level for refunds.
  3. Use customizations if additional automation is required.

Ảnh đại diện
Huỷ bỏ
Bài viết liên quan Trả lời Lượt xem Hoạt động
0
thg 4 25
369
0
thg 3 25
365
1
thg 3 25
395
0
thg 1 25
2
0
thg 12 19
4727