This is a demonstration for the usage of fluvo and https://github.com/GetFluvo/addons
This repository is organised with one branch per Odoo major version. Check out the branch that matches the version of the Odoo server you are importing into:
| Branch | Odoo version | Notes |
|---|---|---|
11.0 |
Odoo 11 | Legacy example (uses ProductProcessorV10). |
18.0 (default) |
Odoo 18 | |
19.0 |
Odoo 19 | You are here. Uses the json2 protocol. |
git checkout 18.0 # for an Odoo 18 server (default)
git checkout 11.0 # for an Odoo 11 server
git checkout 19.0 # for an Odoo 19 serverOdoo 19 deprecates the old JSON-RPC. fluvo connects to Odoo 19+ with the
json2 protocol, which authenticates with an API key instead of a
password. In conf/test_connection.conf this branch therefore sets:
protocol = json2
api_key = <your-odoo-api-key>
Generate the API key in Odoo: Settings -> Users -> API Keys (on your own
user), then paste it into conf/test_connection.conf in place of the placeholder.
Keep the login set to that same user.
This example connects to a local test database, so its connection file is named
conf/test_connection.conf. Fluvo reads the environment from that prefix and
keeps each environment's fail/recovery files separate — a test_connection.conf
run writes failures to data/test/, a prod_connection.conf run to data/prod/.
To promote the same import to production, copy conf/prod_connection.conf.example
to conf/prod_connection.conf, fill in your credentials, and point your scripts at
it (set CONFIG = 'conf%sprod_connection.conf' % os.sep). See the
Fluvo configuration guide
for details.
- Install fluvo:
pip install fluvo(oruv pip install fluvo) - Create an odoo 19 database named "load" with sale_management, purchase and product_template_attribute_value_xmlid installed
- Check the settings in conf/test_connection.conf (set
protocol = json2and yourapi_key) - Create users with name and login Thibault and Francois
- activate the following lang French (BE) / Français (BE), English, Dutch / Nederlands
Your are good to go
sh transform.sh sh load.sh
transform.sh runs the Python transform scripts, which generate the data CSVs
into data/ and (re)generate load.sh with the fluvo import commands.
load.sh then loads everything into your Odoo database.
You've all your data into your database