No signal, no CRM
When the app needs a connection for every single lookup, a visit with no coverage turns into loose notes on the phone that someone has to re-enter later, with all the errors and gaps that brings.
Your reps visit customers in basements, warehouses and rural areas, but the CRM only works online. This Odoo 19 module is the server-side backend for an offline mobile contacts app: it exposes the REST endpoints the app uses to download your contacts (res.partner), keep them on the phone and push changes back once it is online again. It syncs the customer record only, not leads or opportunities, and everything lands back in your Odoo.

Try the module inside a real Odoo 19, no sign-up. User demo / flexigodemo.
Field teams work in trade parks, loading docks, basements and rural areas with patchy signal. A CRM that only responds on a good connection leaves the rep stranded mid-visit and forces them to scribble the details on paper to type in later.
When the app needs a connection for every single lookup, a visit with no coverage turns into loose notes on the phone that someone has to re-enter later, with all the errors and gaps that brings.
When two people touch the same contact from the phone and the desktop, without a clear sync process it is easy to overwrite data and never know which version is the correct one.
Most mobile CRM apps push your contacts into a separate SaaS. That is one more system to maintain, another bill to pay and customer data leaving your Odoo.
The module is the server side: it adds to your Odoo 19 the REST endpoints the mobile contacts app needs to download, edit offline and reconcile. It syncs contacts (res.partner) only -- the customer record, not leads or opportunities.
The pull endpoint returns only the contacts that changed since the last sync: less mobile data burned and faster syncs on every visit.
REST authentication with Bearer tokens for the mobile clients, with automatic lockout after repeated failed login attempts.
When the same contact is edited in two places, the last write wins and the conflict is recorded in the server log with no personal data attached.
Right to erasure built in: one scheduled job anonymises the data and another enforces audit-log retention, with no manual clean-up.
You decide which contacts the app sees with a server-side filter domain, configurable straight from Settings without touching any code.
Bulk create, update and delete with per-batch rollback: either the whole batch of changes applies or nothing is left half-applied.
Three steps, all driven by the REST endpoints this module adds to your Odoo. You install it once and point your mobile app at your own server.
Before the reps head out, the app authenticates with a Bearer token and pulls the contacts allowed by your sync filter. After the first full pull, every later sync is a delta -- only what changed.
Out in the field, the rep looks up, edits and creates contacts on the phone's local copy with zero connection. Nothing waits on a spinner, and no detail has to be written on paper for later.
Back on a network, the app pushes the batch of changes to the transactional endpoints. Odoo applies them last-write-wins, logs any conflict without PII and returns the newest server-side updates in the same round trip.
One flat payment of 19 EUR on the Odoo App Store -- no subscriptions, no per-user seats, no per-sync fees. The full source code ships under the OPL-1 license, so you own it and can adapt it. A single purchase covers Odoo 17, 18 and 19, and updates for the versions you own are included. It installs on both Community and Enterprise.
This module is the server-side backend: it adds to Odoo 19 the REST endpoints that sync contacts (res.partner) with an offline mobile app. It syncs the customer record, not leads or opportunities, and on its own it is not the complete phone app -- it is the server piece that makes the offline flow possible. We tell you that before you buy, not after, and in the demo you can see it working so you decide on facts. Behind it is a single developer at FlexigoTech in Barcelona, so when you ask about the sync backend you talk straight to whoever wrote the code.
Sales-team mobility rarely comes alone. It usually shows up next to the need to keep sales, contacts and day-to-day operations inside a single Odoo.
It is the server-side sync backend for an offline mobile contacts app. It exposes REST endpoints on your Odoo 19 so the mobile app can download your contacts (res.partner), store them locally on the phone and push changes back when it regains connectivity. Only contacts are synced -- the customer record, not leads or opportunities -- and the reconciliation logic lives inside Odoo, not in an external cloud.
Yes. The mobile app works on a local copy of the contacts, so a rep can look up, edit and create records with no network at all. When the device gets coverage again, the backend receives those changes over REST, applies them in Odoo and returns the latest server-side updates in the same call. Offline work is never lost.
No. There is no middleware SaaS in between: the backend runs inside your own Odoo 19 instance and the mobile app talks straight to your server over REST. Your contacts keep living in your database. The module only adds the sync endpoints the app needs, secured with a Bearer token and an audit log that stores no personal data.
Yes. The module builds on res.partner and standard Odoo web controllers, so it installs and runs on Odoo Community as well as Enterprise, across versions 17, 18 and 19. You do not need any Enterprise app for the sync backend itself.
One flat payment of 19 EUR on the Odoo App Store, with the full source code included under the OPL-1 license. There are no subscriptions, no per-user seats and no per-sync fees. You buy it once for Odoo 17, 18 and 19, and updates for the versions you own are included.
Yes. There is a live demo -- a real Odoo 19 with no sign-up (user demo, password flexigodemo) -- where you can see the module installed and the contacts the mobile app would sync. When you are ready you buy the license on the Odoo App Store, and if you need it we help you wire up the mobile side.
The question is whether they keep writing it down on paper or you solve it with an offline mobile CRM synced against your own Odoo. Tell us how your team works and we will tell you straight whether the module fits.