Migrate Pipedrive calls and emails to Odoo by type
Shuttio now writes Pipedrive calls, emails and meetings into Odoo as Call entries, email messages and calendar events, not as to-dos or plain notes.
Last updated: 27 October 2026
Shuttio sorts each Pipedrive activity into the matching Odoo type by its Pipedrive type. A call becomes a Call entry, an email becomes an email message in the record's chatter, and a meeting becomes a calendar event when Odoo's Calendar app is installed (a chatter note when it is not). You can run the free sample on your own Pipedrive data and check the result on a deal in Odoo.
What changed
Shuttio reads Pipedrive's Activities as one object. It reads the type of every row and routes the row by that type.
| Pipedrive activity | What Odoo receives |
|---|---|
| Call, marked done | A done entry of the Call type in the record's chatter, with the title and, when Pipedrive has a duration, the length |
| Call, not done | An open Call activity with its deadline |
| An email message in the chatter, with subject, body and date. Nothing is sent. | |
| Meeting | A calendar event when the Calendar app is installed, a chatter note when it is not |
| Task, open | A To-Do activity |
| Task, done | A done entry in the chatter |
| Any other type, such as Lunch or Deadline | A to-do of an Odoo activity type with the same name (a done entry in the chatter if it was done). Shuttio adds the type when Odoo has none. If Odoo does not accept the new type, the activity becomes a To-Do that names its type. |
Each activity attaches to the first parent Shuttio has migrated, in this order: deal, then person, then organization. The writes are set up so that nobody in Odoo is notified.
How to use it
- Start a migration at
/intakeand pick Pipedrive as the source and Odoo as the destination. - On the Connect step, sign in to Pipedrive. For Odoo, enter the URL, database, login and API key. The key must belong to an administrator.
- On the Objects step, tick Activities. If you also want Pipedrive's mail threads, tick Emails.
- Read the line under Activities. It says how types without a direct Odoo match land, before anything is written.
- Review the fields, then start the free sample. The sample takes 5% of the top-level records you ticked (picked at random, at least 10, at most 1,000) plus the records linked to them.
- Open a sampled deal in Odoo. Check that calls show as Call entries, emails as email messages, and meetings in the calendar.
- Choose "Run full migration". The price for your record count is shown before it starts. Odoo pricing runs from $249 for up to 50,000 records.
If the sample looks wrong, cancel. Cancelling deletes what the migration created, in reverse order. A record that already existed in Odoo and was matched stays untouched.
What it does not cover
- Meetings need Odoo's Calendar app. Without it, a meeting is written as a note in the chatter.
- Custom types add activity types to Odoo. A type such as Lunch lands under an Odoo activity type of the same name. When Odoo has none, Shuttio adds it; if Odoo does not accept the new type, the activity becomes a To-Do that names its type. A rollback removes an added type unless activities of yours use it.
- Pipedrive's mail threads are a separate object. They need the
mail:readpermission on the Pipedrive connection. Without it, the run writes one Reconnect row. - Not carried: deal products and Pipedrive filters.
- Attached files move only when Odoo is connected with an API key. The Odoo app and the import package do not carry them.
- Projects need Odoo's Project app.
FAQ
Do Pipedrive calls arrive as plain notes? No. A done call is a chatter entry of the Call type. A call that is not done is an open Call activity. The entry's text starts with "Call:". If your Odoo has no Call activity type, the entry uses the To-Do type.
Will Odoo email the people on a migrated email? No. The email is written as a message in the chatter. Shuttio does not send it, and it does not notify followers.
Where do I see how other types land? On the Objects step, under Activities. For Odoo the line says other types such as Lunch go in as to-dos of an activity type with the same name, and that Shuttio adds the type when Odoo has none.