What Revial syncs with Odoo
For your Odoo administrator and whoever reviews the integration's data access — every Odoo field Revial reads, everything it writes back, and the known gaps.
This page lists, field by field, what Revial reads from Odoo and what it writes
back. For connecting see Connecting Revial to Odoo.
Names in code are Odoo model and field names.
Everything runs as the Odoo user whose API key you entered, so that user's access rights and record rules decide what Revial sees.
1. How the sync runs
- A sync starts as soon as you connect, then runs roughly every hour. The first
sync reads everything; later ones read records with a newer
write_date. - Archived partners and opportunities are included.
- Revial stores each record as returned, alongside the fields mapped below.
- Disconnecting deletes Revial's synced copy of your Odoo data.
2. Companies (res.partner, is_company = true)
| In Revial | Odoo field |
|---|---|
| Name | name |
| Website, phone | website, phone |
| Description | comment |
| Address | street, city, country_id |
| Created / updated | create_date, write_date |
3. Contacts (res.partner, is_company = false)
| In Revial | Odoo field |
|---|---|
| Full name | name |
| Email, phone | email, phone |
| Job title | function |
| Company | parent_id |
street, city, country_id and comment are also read for contacts but not used.
4. Opportunities (crm.lead, type = opportunity)
| In Revial | Odoo field |
|---|---|
| Deal name | name |
| Value | expected_revenue |
| Currency | company_currency |
| Win probability | probability |
| Stage | stage_id |
| Status | Won if the stage is a won stage; lost if the opportunity is archived; otherwise open |
| Expected close date | date_deadline |
| Actual close date | date_closed, once closed |
| Company or contact | partner_id |
Stage names and the won flag come from crm.stage (name, sequence, is_won).
5. Notes (mail.message)
Chatter messages with message_type = comment on opportunities and partners:
subject, body (HTML), date, and the record they belong to. This includes
logged notes and emails recorded in the chatter.
6. What Revial does not read
- Leads —
crm.leadrecords of type lead. - Salesperson, sales team, tags and lost reasons.
- Activities (
mail.activity) and calendar events. - Custom fields — none are synced.
- Products, quotations, invoices and attachments.
For the field-mapping screen, Revial also reads field definitions (fields_get,
ir.model.fields, properties.base.definition).
7. Known limitations when reading
- Deleted records are not detected. Archiving is picked up; a record deleted in Odoo stays in Revial's copy.
- Stage lists are not stored, so stage choices in Revial settings are empty for Odoo.
- Companies have no domain; domain matching relies on the website field.
- An opportunity linked to a contact gets no company link, even if the contact belongs to a company.
- Revoked API keys are not reported — syncing stops without a notification.
- A field missing in your Odoo version stops that model's sync.
8. What Revial writes to Odoo
Revial never deletes anything in Odoo and never creates partners or opportunities.
8.1 Meeting summary note — automatic
After a meeting's summary is ready, Revial creates a chatter message
(mail.message) as an internal note (message_type = comment, subtype
mail.mt_note):
| Field | Value |
|---|---|
model, res_id | The matched opportunity (crm.lead), otherwise the contact or company (res.partner) |
subject | "Meeting Summary – meeting title" |
body | HTML: your note template, an AI-generated notice and a link to the meeting in Revial. Capped at 64 KB |
The note is authored by the API key's user and written once per meeting. Admins can change which record type receives it in CRM settings. Automatic pushing can be switched off for a connection by Revial support.
8.2 Mapped fields — optional
Admins can map Revial summary fields and
custom extraction fields to fields
on contacts and companies (res.partner) and opportunities (crm.lead),
including Studio x_ fields and Odoo Properties.
- Only writable text, number, monetary, boolean, date, datetime, selection and HTML fields can be mapped — not relational fields.
- Revial updates the matched record only; a field with a value is left alone unless the mapping overwrites.
- Properties are written by reading and rewriting the whole properties list, so a simultaneous edit in Odoo can be overwritten.
8.3 Manual push
Any team member can post a meeting note from Revial to a chosen opportunity, contact or company, and optionally push mapped fields.
8.4 Not written to Odoo
- New opportunities — deal creation is not available for Odoo.
- Activities, tasks and transcript notes.
Connecting Revial to Odoo
Creating an Odoo API key, connecting your Odoo instance to Revial, and what to do when the connection fails.
Odoo technical integration guide
For Odoo administrators, security reviewers and IT — how Revial authenticates with an API key, required access rights, API consumption, failure behaviour and auditing.