Skip to Content
Menu
This question has been flagged
1 Reply
6056 Views

How to work with Accruals, prepayment and unrealized exchange Gain/Loss in Odoo

Avatar
Discard
Author Best Answer

How to work with Accruals in Odoo ?

  1. What are Accruals?

Accruals are revenues or expenses that need to be recorded in the accounting but we didn’t invoice yet. 

Example: A bonus at the end of the year 2018 will be paid in 2019 but has to be supported and recorded in the 2018 accounting.

I receive a product in 2018 but I will receive the vendor bill in 2019.

  1. In Belgian accounting (Create a specific journal for it)


  • Accrual would be the use of “Facture à recevoir (444)” 

Example: I received the product in 2018 for a value of 1000 but will receive the vendor bill in 2019 but I want to register it in my account of 2018.

At the date I want to make my entry in 2018 I will create a journal entry for an account of charge (600) for 1000 and in liabilities (444) for 1000.

2018:

Code

Name

Debit

Credit

6000

Achat de matières premières

1000


4440

Factures à recevoir


1000


In 2019 I receive my vendor bill and odoo will register automatically a move in charge (600) and in liabilities (440 “dettes fournisseur”).

2019:

Code

Name

Debit

Credit

6000

Achat de matières premières

1000


4400

Fournisseurs


1000


At the same moment I record my vendor bill I have to reverse my journal entry I wrote manually in 2018. By doing this odoo will balance the account 444 and the liability will only remain in 2019 (400). Concerning the charge (600), odoo will balance it at the date you reverse so in year 2019 the charge will be balanced and the charge will only remain in 2018.

2019:

Code

Name

Debit

Credit

6000

Achat de matières premières


1000

4440

Factures à recevoir

1000



  1. In Anglo-Saxon accounting (Create a specific journal for it)/!\ CHECK THE ACCOUNT WITH THE ACCOUNTANT OF YOUR CLIENT FOR THE ACCOUNT


  • Accrual for a storable product 

Example: I received the product in 2018 for a value of 1000 but will receive the vendor bill in 2019 but I want to register it in my account of 2018. The cost of the product is therefore also 1000.

I will register my receipt order in my stock in 2018 and it will create automatically a move in my stock input account and my stock valuation account for 1000.

Stock input account: 10112 Stock interim Account (Received)

Stock output account: 101130 Stock interim Account (Delivered)

Stock Valuation Account: 101000 Current Assets

Stock Journal: Stock journal (USD)


Code

Name

Debit

Credit

10100

Current assets

1000


10112

Stock Interim Account (Received)


1000


At the date I want to make my entry in 2018 I will create a journal entry for an account of charge for 1000 and in liabilities to receive for 1000.

Code

Name

Debit

Credit

103000

Prepayments


1000

210000

Expenses

1000



In 2019 I receive my vendor bill and odoo will register automatically a move in charge and in liabilities, debt supplier.

Code

Name

Debit

Credit

111100

Account payable


1000

101120

Stock Interim Account (Received)

1000



At the same moment I record my vendor bill I have to reverse my journal entry I wrote manually in 2018. By doing this odoo will balance the account liabilities debt invoice to receive and the liability will only remain in 2019 (supplier debt). Concerning the charge, odoo will balance it at the date you reverse so in year 2019 the charge will be balanced and the charge will only remain in 2018.


How to work with pre-payment in odoo (Charge à reporter)? /!\ IT IS A WORK-AROUND

  1. What are the pre-payment?

I want to split the periods I register the charge so that I don’t have everything at the same time.

Example: I have a water bill to receive in March (900$) for the period of January to March but I want it to be divided in 3X300 at the rate of 300 per month. 

I receive a vendor bill for subscription of 12 months (1200$) of a new software I just bought. I want the charge to be divided in the 12 following month, so getting 100 in charge every month in order to get 1200 at the end.

  1. I receive the vendor bill and want it to be divided in the following month

Example:

I receive a vendor bill for subscription of 12 months (1200$) of a new software I just bought. I want the charge to be divided in the 12 following months, so getting 100 in charge every month in order to get 1200 at the end.

  • By using the assets we can achieve it. 

  • Create an asset type called pre-payment (charge à reporter). You put the account 490 (charge à reporter) as asset account and expense account 600. You specify that it is every month for 12 month.

  •  When you record the vendor bill select the asset type on the invoice line.

  • Odoo will, once validated, create a table with all the following entries for 100 each time but it will still require to be posted manually.

  • At the moment the vendor bill is validated odoo will create the journal entry 490 (charge à reporter) to 400 (supplier debt).

  • Then every month I will post the entry created in the asset and it will remove from 490 to put in charge (600) and therefore have your charge divided in 12 months.

Be cautious as in the future with the asset odoo will create a table of depreciation and odoo might include this pre-payment in the depreciation table while it should not!

  1. I will receive the vendor bill in the future but I want to record my charge every month before

Example:

I have a water bill to receive in March (900$) for the period of January to March but I want it to be divided in 3X300 at the rate of 300 per month.

  • - Create manually a journal entry for invoice to receive (444) and for charge (600) every month for 300$

OR

- Create an asset type with as “asset account” the account invoice to receive (444) and the expense account 600 (charge). Create an asset at the moment you want to record the first charge and odoo will create an entry for 600 to 444 (invoice to receive) every month. 

  • In march record the vendor bill and odoo will create the move for 900 in liabilities (400) and 900 in charge (600)

  • - At the moment of the creation of the vendor bill I have to go reverse the entry I created manually so that the charge remains on every month for 300 and at the date of today having the liability for 900 (400)

OR

- Go on your asset and select the smart button items, there you have all the entry that have been made for that asset. You can select them all and reverse them globally so that the 444 goes to 0 and the charge at the date of the invoice goes to 0 and remain divided between the 3 months.


How to do unrealized gain/loss on exchange rate?

  1. What is unrealized gain/loss on exchange rate?

I have the currency of my company in $ and I make a vendor bill in Euro at the current rate of the day of the invoice. But at the end of the month I didn’t receive the invoice and the exchange rate has changed. I want to record the new value of my debt in odoo in an account called unrealized gain/loss on exchange rate.

Odoo does not do that in standard automatically so it will be needed to record it manually. Or you can ask for a dev, see spec made here

  1. How to do it in odoo

Example: I record my vendor bill for 1000 EUR while my company currency is USD (currency rate 1/2). Odoo will create automatically a record for a debt of 2000 in USD in my accounting and record that the bill is due for 1000 EUR.

At the end of the month, you will have to register a miscellaneous operation manually. To know what you have to put in your gain/loss account in your journal entry, you have to do the following step:

  • Go in the journal items

  • Filter by unreconciled so that you have all invoice that are still open

  •  Group by currency so that you can see which invoice was done in which currency

  • Export in an excel file all the journal items in EUR and export the field; “amount currency” and “credit” (for payable) or “debit” (for receivable)

  • In your excel file you have the amount you owe in EUR (1000) and the amount in $ at the rate of the invoice (2000)

  • You add a new column where you will record the new amount in $ with the new rate. To do so you just need to divide the amount in EUR with the new rate (here 1) so it will be 1000$.

  • You have one column with the amount at the rate of the invoice and one column with the rate of the end of the month. You make the difference between the 2 column to get the exchange rate gain/loss

  • As it is unrealized yet you will have to register it manually. You make manually a journal entry with the correct gain/loss. If this needs to be done on many month you can set that the entry will be reversed at a specific date so that it is reversed automatically and then you just need to repeat the operation in order to find the difference between the two rate

  • At the moment you register the payment, odoo will automatically register the difference in an account of exchange gain and loss (but not unrealized).

  • At the moment of the payment you will have to reverse the entry you made with the unrealized account of gain/loss because it is already recorded with the payment.

Avatar
Discard
Related Posts Replies Views Activity
1
Jul 21
3268
1
Apr 21
2067
2
Apr 24
522
1
Aug 23
16082
3
Aug 23
2826