Skip to Content
Odoo Menu
  • Sign in
  • Try it free
  • Apps
    Finance
    • Accounting
    • Invoicing
    • Expenses
    • Spreadsheet (BI)
    • Documents
    • Sign
    Sales
    • CRM
    • Sales
    • POS Shop
    • POS Restaurant
    • Subscriptions
    • Rental
    Websites
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Supply Chain
    • Inventory
    • Manufacturing
    • PLM
    • Purchase
    • Maintenance
    • Quality
    Human Resources
    • Employees
    • Recruitment
    • Time Off
    • Appraisals
    • Referrals
    • Fleet
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Events
    • Marketing Automation
    • Surveys
    Services
    • Project
    • Timesheets
    • Field Service
    • Helpdesk
    • Planning
    • Appointments
    Productivity
    • Discuss
    • Approvals
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industries
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Beverage Distributor
    • Hotel
    Real Estate
    • Real Estate Agency
    • Architecture Firm
    • Construction
    • Estate Management
    • Gardening
    • Property Owner Association
    Consulting
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Manufacturing
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Community
    Learn
    • Tutorials
    • Documentation
    • Certifications
    • Training
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Download
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Events
    • Translations
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
    • Meet an advisor
    • Implementation Services
    • Customer References
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Get a demo
  • Pricing
  • Help

Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:

  • CRM
  • e-Commerce
  • Accounting
  • Inventory
  • PoS
  • Project
  • MRP
All apps
You need to be registered to interact with the community.
All Posts People Badges
Tags (View all)
odoo accounting v14 pos v15
About this forum
You need to be registered to interact with the community.
All Posts People Badges
Tags (View all)
odoo accounting v14 pos v15
About this forum
Help

How to use Webhook with automated action in Odoo

Subscribe

Get notified when there's activity on this post

This question has been flagged
studioquickstartv17
3 Replies
36659 Views
Avatar
Damien Dejong (ded)

How to use Webhook with automated action in Odoo

4
Avatar
Discard
Niyas Raphy (Walnut Software Solutions)

https://www.youtube.com/watch?v=9KWuFFd7tEw

Niyas Raphy (Walnut Software Solutions)

For creating new record: https://www.youtube.com/watch?v=D3urHJ9rB2o

David D

HI, 

Now I understand what's the working of Webhook Automation

Thanks and regards

Avatar
Damien Dejong (ded)
Author Best Answer

In version 17 of Odoo with studio, you can now use webhook.


Definition

 A webhook is a kind of integration. With that you can launch actions in your database based on an url being triggered.

This means you can integrate 2 Odoo Databases together without the need of a developer. 

How to use it 

Let's take the case of 2 Odoo DB interacting with eachother


Database A is the database where you will make the modification manually

Database B is the database where the Webhook will automatically apply a change


I want to change the salesperson on a sale order on my Database B when I change it on my database A​


In Database A

  • Go on a Sale Order
  • Open studio => Create an Automation 
    • Select the trigger you want (here on save)
    • Create an action => Select "Send Webhook Notification"

  • When creating the action you have this popping up

    • The "URL" is a field that we will only be able to fill in once we have configured Database B
    • The "Fields" allow you to select fields from the sale order and send the information that are in those fields
    • The "Sample Payload" is the code that will be send to the Database B
      • This code will be automatically filled in with the name, model and the id of the record where the action is triggered on
      • Any new field added on the "Fields" will add a new line


  • Save for now the action, we will come back to it after

In Database B

  • Go on a Sale Order
  • Open studio => click on "Webhook"

  • The automation is by default like this


    • The "URL" is what allows you to make the link with the Database A => Copy it and paste it in the field "URL" we had on the automated action in Database A
    • Select "Log Calls" as it will allow you to check what is happening in your Database and if the webhook link has worked or not and what went wrong if didn't work
    • "Target Record​" is a piece of code that allow you to define which record should be updated by this action.
      • By default it is filtering which record is targeted by the info received from the payload you received from the Database A

FOR THE MOMENT

This code is not working between 2 Odoo DB:

​ ​ ​ ​env[payload.get('_model')].browse(payload.get('id'))


 You change it like such :

​ ​ ​ ​ ​model.browse(payload.get('_id'))


  1. We start with model as we just want to say that this action is triggered on the model of the record
  2. Browse allow us to search in what following which is (payload.get('_id')), so you are going to look into the code received from Database A
  3. get('_id')) is going to select the value of the field "id"

FOR THE MOMENT

You should replace the get('id') by get('_id')


When looking at the log received from the automation we can see the info sent by Database A which is the following

​



Even if the code sent was this​:


As you can see, in the code received you have a _ while in the code sent you don't

​

  • You can use any normal server action you want when the Webhook is triggered but you can also use python 
    • By using normal actions like change the value in the field salesperson the information coming from the payload is not going to matter besides the ID
      • The ID of the record updated in Database B is the same ID as the one you triggered the action on in Database A
        • Example: If my Sale Order in Database A has the ID "1" then the Sale Order with the ID "1" in Database B will be updated
    • By using python, you can use the data that are sent in the payload to do specific things
      • For more information about that, you can see this video: https://www.youtube.com/watch?v=wyU0SjOQXRk ?

​

5
Avatar
Discard
Kevin Harrings (kha)

Hello DED! You mention webhooks to integrate 2 Odoo instances. But I guess we can also have some kind on integration between Odoo and another service. What are the limitations using webhooks? And in which cases would a "traditional" integration through an API or FTP server be better?

Damien Dejong (ded)
Author

Hello Kevin,
Yeah of course you can integrate with almost any kind of software as long as they can use a webhook. I think that most of the time you will mostly integrate with other software actually. In the Video I added made by the US, there is an example of integrating with spreadsheet...
Concerning the choice of going through API, FTP server or webhook, it is more the case by case I guess but as I am not a developer I would not really be able to say when you would go for one rather than the other.
But limitation wise, I don't see any as you can use python to launch actions with the Json you received. Maybe the only limitation I can see without using it in a project yet, is that the fields you select to send information to the other DB are limited to the one in the model you are in. For example in a SO you can only send the info of the ID of the customer, you cannot go on the model contact retrieve information such as the name or the phone number of the customer..

Dasadiya Chaitanya

Good Answer and thanks for sharing !

Avatar
Niyas Raphy (Walnut Software Solutions)
Best Answer

Hi,
Introduction to webhook in Odoo 17:  Use Webhooks to Send and Receive Data in Odoo

To create record in Odoo Using webhook: Create a New Record Using Webhook in Odoo 17


Thanks

0
Avatar
Discard
Avatar
aelaw326@gmail.com
Best Answer

I have a playlist that walks you through this:

https://www.youtube.com/playlist?list=PL1oT_5mNYVTNYxjQ_riHnl4yubyfneK5L

0
Avatar
Discard
Enjoying the discussion? Don't just read, join in!

Create an account today to enjoy exclusive features and engage with our awesome community!

Sign up
Related Posts Replies Views Activity
How to edit the size of a field on pdf report with studio Solved
studio quickstart
Avatar
Avatar
1
Oct 21
5846
How to set up a dynamic date filter with studio ?
filtering studio quickstart
Avatar
Avatar
Avatar
Avatar
Avatar
5
Oct 24
13605
Urgent Assistance Needed – Error Encountered During Quotation Modification in odoo Studio
studio Quotation v17
Avatar
Avatar
Avatar
2
May 24
2626
Translating a Studio report into the contact's language Solved
report studio quickstart
Avatar
Avatar
2
Mar 24
5617
[v17.0] Contact form is unreachable/ "I can't create or edit contacts in Odoo 17" Solved
quickstart Quickstart v17
Avatar
Avatar
2
Nov 23
3347
Community
  • Tutorials
  • Documentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Translations
Services
  • Odoo.sh Hosting
  • Support
  • Upgrade
  • Custom Developments
  • Education
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Brand Assets
  • Contact us
  • Jobs
  • Events
  • Podcast
  • Blog
  • Customers
  • Legal • Privacy
  • Security
الْعَرَبيّة Català 简体中文 繁體中文 (台灣) Čeština Dansk Nederlands English Suomi Français Deutsch हिंदी Bahasa Indonesia Italiano 日本語 한국어 (KR) Lietuvių kalba Język polski Português (BR) română русский язык Slovenský jazyk slovenščina Español (América Latina) Español ภาษาไทย Türkçe українська Tiếng Việt

Odoo is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

Website made with

Odoo Experience on YouTube

1. Use the live chat to ask your questions.
2. The operator answers within a few minutes.

Live support on Youtube
Watch now