Invoicing with Odoo
Table of Contents
Prerequisites
-
An active account on Odoo Online: https://www.odoo.com/ or a self-hosted Odoo instance
-
On Demand Delivery
product name on CoopCycle must match product name on Odoo (configurable in Settings): -
Account code
must match an account used on Odoo (configurable in Settings) -
Client/Store
Legal name
on CoopCycle must match Customer name on Odoo:
Preparing data for Invoicing
-
Open Invoicing page and select a period to prepare invoices for:
-
Click
Refresh
to find all clients/stores with orders during the selected period: -
Click on the “plus” icon to view orders for each client and verify that all data is entered correctly
Make sure that all prices are entered correctly and match the amount you are going to charge a client.
Only `Subtotal (excl. VAT)` prices are exported to Odoo. `Taxes` and `Total (incl. VAT)` columns are for information only. The actual tax calculation is done on Odoo side.❗️Avoid modifying the price after the export is done to avoid discrepancies between the Client’s CoopCycle Dashboard or Orders history and the totals on the Invoice.-
If something is not correct click on the
View
button next to each order to go to the order details page and modify the data. -
On the order details page you can:
- Update a Description and/or an original price: click on the
Edit
button:
- Modify a price via an Incident; click on the
Create an incident
button:
TIP: Use the `Refresh` button to refresh the table after editing instead of a reload page button in the browser to avoid resetting the filters. - Update a Description and/or an original price: click on the
-
-
After all orders have been verified select the clients/stores you want to include in the export and click on the
Download
button: -
Select
Odoo (CSV)
format and click on theDownload
button to download the file on your computer:TIP: The orders included in each export will be marked with a file ID. That can be used to track in which file an order was exported. You can also use a filter to see only orders that are not invoiced (not-included in the previous exports).
Importing data into Odoo
-
On your Odoo instance go to the Invoicing app and choose
Import records
: -
Click on
Upload File
and choose a file that you downloaded from CoopCycleOdoo should process the file and prefill Odoo Fields. Make sure that the fields are the same as on the screenshot and select an
Odoo Field
manually if anything is missing -
Click on
Test
to validate the fileIf you get any error messages most probably (1) a Client/Store/Partner name or (2) a Product name or (3) an Account code do not match between Odoo and CoopCycle.
There are two options to solve it:
- Modify the data on CoopCycle to match the data on Odoo; see Prerequisites section above and then repeat the steps from Prepare data for invoicing section again.
OR - Select
Create new values
option; that will create a new Client/Partner or a Product entry on Odoo for each missing value (❗️be careful as that might lead to multiple entries for the same Client on Odoo)
- Modify the data on CoopCycle to match the data on Odoo; see Prerequisites section above and then repeat the steps from Prepare data for invoicing section again.
-
Click
Test
to re-run the validation. When ‘Everything seems valid’ click onImport
: -
After the file is uploaded (might take a few minutes depending on the number of orders) you should see a new Invoice draft created in the list of Invoices
-
Confirm the invoice and send it to a client using your preferred communication method using a standard Odoo workflow