Odoo
Jump to navigation
Jump to search
Installation
- There is a paying SaaS option, in which case your Odoo instance is hosted by Odoo and available at https://ainulindale.odoo.com/ for instance.
Databases
- You can export and duplicate databases directly from the web interface (Top Right Menu -> My Databases).
Applications
Accounting
Vendor Bills
- You can upload attachments (PDF or picture) to an Odoo vendor bill. There is an attachment icon next to the "Send message" section button.
- When you create manually a vendor bill, you need to enter invoice lines. Don't forget to remove the VAT if it's not applicable.
- If the vendor bill is not in the natural currency, you must enter the corresponding rate on the concerned date. This can be done via Accounting -> Configuration -> Currencies. Alternatively, enter directly the bill in the natural (paid) currency.
- If you click on "Register payment" for a vendor bill, a journal entry is created with credit to account 1023 (Outstanding payments) and debit to account 2000 (Accounts payable from goods and services). When you later reconciliate with the bank transaction, there is debit from 1023 and credit to the bank account. It's recommended to proceed like that, but if you reconciliate before registering payment, the reconciliation will directly take place with debit to account 2000 and credit to the bank account. This is not a real issue, but the 1023 entry will never be created.
Reporting
- The general ledger is is accessible via Reporting -> General Ledger and is a good way to check current balances in your different accounts.
- Reporting -> Profit and Loss is also very useful.
Banks
- When initially adding / configuring a bank, it's very important to choose an appropriate Short code: this will be used in the journal entry names. If you don't do that, the entries have generic names like BNK1.
- "Account number" and "Bank" fields (for a bank entity) can only be configured (apart from initial configuration) by looking at the bank journal.
Bank Statements and Reconciliations
- When adding a bank transaction manually, add the amount (it should usually be negative if it's an outgoing payment) then choose "Match existing entries". Using filters, it's quite easy to reconciliate the bank transaction with existing journal entries. The main thing to understand is that by default, the filters allow you to reconciliate only on entries that are part of the corresponding bank journal. So if you need to choose a different entry (from the Miscellaneous Operations journal for instance), you need to manually filter. For instance, you could filter on the target account (2270 is a good example to make a reconciliation including AVS payments). Once the transaction is matched with the correct journal entries, click on the Validate button.
- Most of the transactions will match entries in the 1023 (Outstanding payments) or 1024 (Outstanding receipts) accounts. Actually, you should probably always create an entry that will use these accounts, so for instance for a payment to the AVS institution, you could first add a journal entry that would debit from 2270 and credit to 1023. But to save time, I sometime reconciliate directly from 2270, without using the 1023 account.
- Creating a statement is very hidden (Odoo version 16): on the bank reconciliation screen, there is an invisible "Statement" button on all lines of the transactions (at the top and middle of the lines at the left). Clicking it allows to create a bank statement. A better way to create a bank statement is to click on the view list (in the reconciliation screen), select a bank transaction entry, then click Action -> Create statement. This is really, really not convenient, probably because Odoo 16 does not want you to manually process / handle the bank statements.
- A bank statement just has a name, a starting balance and an end balance (it does not even have dates). Bank transactions are linked to a statement and the statement is just a way to ensure the balances match with all the transactions associated with a statement. I believe statements are not 100% needed, but are convenient, so I use them (by manually entering them). Note that you can attach a file (PDF statement from the bank) to the Odoo bank statement object.
Internal bank transfers
- You can create one by going to the dashboard, then click on the 3 dots next to a bank block, then New -> Internal Transfer.
Currencies
- Choosing automatic rate updating (which is probably very useful) can be done in the general configuration (Configuration -> Settings -> Accounting -> Currencies). You can select the frequency of updates. If you missed some, you can always enter the rates manually.
- Multi-currency is supported in Odoo, although the exact details seem to be complex. It seems important to define the accounts (in the chart of accounts) as having the desired currency, as well as the journals (for instance the bank journals). It's possible to issue invoices in an different currency than the base one. However, the actual journal entries are encoded in the base currency, although the actual currency is also shown (the "Amount in currency" field).
- If you enter manually a journal entry in a different currency, you should use the "Amount in currency" field, but it's hidden by default. Select it manually in the list of columns shown.
- Note that in some places (invoices, or manual journal entries) the conversion to base currency seems to happen only when you change the amount value (based on the latest rate available at this time). So if you used a wrong rate, update the rates by entering a new entry, and then reset to draft a journal entry / invoice, it won't update. You need to change the amount to force the update.
Fiscal years
- Be careful that entries that happened before the fiscal year defined in Odoo are not by default shown in the Profit & Loss (and other reports). This can be dangerous if some journal entries predated the start of the first fiscal year. You can get the correct results by entering a custom period, however (that will include the concerned entries).
- It does not seem needed to close fiscal years. However, in the balance sheet report you need to choose the standard report option, not the Balance Sheet (CH) option to get something correct.
Payroll
- It seems the Payroll module does not have built-in rules for countries. For instance, you must enter manually the rules that will compute your social contributions.
- Rules should be either of category "Company contribution" (if the employer pays this contribution) or "Deduction" (if it's paid by the employee, out of the gross salary).
- You must first create a work contract for an employee.
- Clicking on the "Compute Sheet" button will create automatically the salary computations (such as social compensations, etc).
- To create the entries in the accounting journals, you should click on the "Create Draft Entry" button on the Payslip. Then those entries must be posted using the Accounting module.
- It does not seem necessary to register payment (and click on the "Mark as paid" button) in the Payroll application.
Working Setup
- I set all the Deduction rules (the social contributions paid by the employee) with 5099 (Net Salary) as the debit account and 2270 (Social insurances owed) as the credit account. It generates correct entries but another manual entry is absolutely mandatory, with 5099 as debit and 2260 (Salaries) as credit. I am not sure how to perform this in a better (and automated) way, but currently it's working fine.
Switzerland Chart of Accounts
- 1024 is the bank account for Revolut, 1025 is the bank account for PostFinance.
- 2260 holds the debt of the company to the employees (salaries).
- 2270 holds the debt of the company to the social insurance institutions.
- 2800 is for the share capital.
- 2850 (Private share account) is used to hold debts of the company to the shareholder.
- 5700, 5710, 5720, 5730, 5740 are used for various social benefits (health insurance, unemployment insurance, maternity insurance etc).
- 6000 for rental expenses.
- 6510 for legal fees (registration of company, etc).
- 6520 for fiduciary fees.
- 6700 for general operating expenses.
- 6900 for financial expenses like bank fees.