Flowtica

n8n เชื่อม Odoo ERP: ระบบ Workflow Automation ข้ามแอปสำหรับ SME ไทย

โดย ทีม Flowtica

n8n คือ open-source workflow automation ที่ช่วย SME ไทยเชื่อม Odoo ERP กับแอปธุรกิจอื่นได้โดยไม่ต้องเขียนโค้ด — ตั้งแต่ส่ง LINE แจ้งทีมขายเมื่อมี Sale Order ใหม่ ไปจนถึงซิงก์ข้อมูลลูกค้าเข้า Google Sheets ทุกคืน บทความนี้อธิบายว่า n8n คืออะไร ต่างจาก Odoo Automated Actions อย่างไร พร้อม Use Case จริงและขั้นตอนตั้งค่าทีละขั้น

n8n is an open-source workflow automation platform that connects Odoo ERP with 1,000+ apps — from LINE and Google Sheets to Slack and custom webhooks — without writing code. This guide explains what n8n is, how it differs from Odoo's built-in automation, and includes real use cases for Thai SMEs.


n8n คืออะไร และทำงานอย่างไร

n8n (อ่านว่า "nodemation") คือ workflow automation platform แบบ open-source ที่ช่วยให้เชื่อมต่อแอปและ API ต่างๆ ผ่าน visual drag-and-drop interface โดยไม่ต้องเขียนโค้ด แนวคิดหลักคือ:

  • Trigger — เหตุการณ์ที่เริ่ม workflow เช่น webhook รับข้อมูล, schedule ตามเวลา, หรือ event ใน Odoo
  • Nodes — บล็อกที่แต่ละชิ้นทำหน้าที่อย่างใดอย่างหนึ่ง เช่น ดึงข้อมูลจาก Odoo, แปลงข้อมูล, หรือส่งข้อความ LINE
  • Connections — เส้นเชื่อมระหว่าง Node ที่ส่งข้อมูลต่อกัน

n8n มี Node สำเร็จรูปรองรับกว่า 1,000 แอป รวมถึง Odoo Node ที่เชื่อมต่อผ่าน Odoo External API (XML-RPC) โดยตรง ไม่ต้องสร้าง middleware เอง

n8n ต่างจาก Zapier หรือ Make.com อย่างไร

| | n8n | Zapier / Make.com | |---|---|---| | License | Open-source (fair-code) | Proprietary SaaS | | Self-hosted | ได้ ฟรีสำหรับใช้ภายใน | ไม่ได้ | | ราคา | Cloud plan เริ่มต้น ~$20/เดือน (ผู้ให้บริการระบุ) | Per-task pricing อาจแพงกว่าเมื่อ scale | | Odoo Node | มี built-in | มีเช่นกันแต่ limited operations | | Control ข้อมูล | Data อยู่บน server ของคุณ (self-hosted) | Data ผ่านเซิร์ฟเวอร์ provider |

สำหรับ SME ไทยที่มี Odoo และต้องการ automation ข้ามระบบ n8n เป็นตัวเลือกที่คุ้มค่าโดยเฉพาะ self-hosted version ที่ไม่มี transaction fee


ทำไม SME ไทยถึงต้องการ Workflow Automation ข้ามระบบ

SME ไทยส่วนใหญ่ที่ใช้ Odoo มักเผชิญกับปัญหาเดิมๆ:

  • Data silos — ข้อมูลลูกค้าอยู่ใน Odoo CRM แต่ทีมขายยังดึงมา copy ลง Excel แล้วส่งต่อ
  • Manual hand-off — Order ใหม่เข้า Odoo แต่ต้องโทรหรือ LINE แจ้งทีมโกดังด้วยมือ
  • Reporting ล่าช้า — ผู้จัดการต้องเปิด Odoo ดูเองทุกเช้า แทนที่จะได้รับรายงานอัตโนมัติ

Odoo มี Automated Actions แก้ปัญหาภายในระบบได้ดี แต่เมื่อต้องการ ส่งข้อมูลออกนอก Odoo หรือ รับข้อมูลจากระบบภายนอก เข้า Odoo นั่นคือจุดที่ n8n ทำงานได้ดีกว่า

ตัวอย่างเหตุการณ์ที่ n8n แก้ได้แต่ Odoo Automated Actions ไม่ถนัด:

  • ส่ง LINE แจ้งทีมงานเมื่อ Delivery Order พร้อมส่ง
  • ดึงยอดขายรายวันจาก Odoo ไป update Google Sheets ทุก 18.00 น.
  • รับ lead จาก Facebook Form แล้วสร้าง CRM Opportunity ใน Odoo อัตโนมัติ
  • sync ข้อมูลสินค้าระหว่าง Odoo กับ Shopify หรือ WooCommerce

ประโยชน์ที่จับต้องได้

เมื่อใช้ n8n เชื่อมต่อ Odoo กับระบบอื่นๆ อย่างถูกจุด ผลที่พบในทีม SME ส่วนใหญ่คือ:

  • ลดงาน manual ข้ามระบบ ข้อมูลไหลอัตโนมัติโดยไม่ต้องมีคน copy-paste ระหว่างแอป
  • ทีมได้รับข้อมูลเร็วขึ้น แจ้งเตือนผ่าน LINE หรือ Slack เกิดขึ้นภายในวินาทีที่ event trigger
  • Reporting อัตโนมัติ ผู้บริหารได้รับสรุปยอดขายทุกเช้าโดยไม่ต้องให้ใครจัดทำ
  • เชื่อมต่อระบบที่มีอยู่แล้วได้ ไม่ต้องเปลี่ยนแอปที่ทีมคุ้นเคย แค่สร้าง workflow เชื่อมกัน

หมายเหตุ: ผลที่ได้จริงขึ้นกับจำนวน workflow, ความถี่การ trigger, และความซับซ้อนของ process แต่ละองค์กร


Use Case จริงสำหรับ SME ไทย

1. ส่ง LINE แจ้งทีมเมื่อมี Sale Order ใหม่

Trigger: Schedule ทุก 15 นาที → Odoo Node ดึง Sale Order ที่ state = sale และ create_date ในช่วง 15 นาทีที่ผ่านมา → Function Node จัดรูปแบบข้อความ → LINE Notify หรือ LINE Bot Node ส่งแจ้งเตือน

ข้อความที่ส่งอาจมีรูปแบบ:

🛒 Order ใหม่ #S00123
ลูกค้า: บริษัท ABC จำกัด
ยอดรวม: ฿85,000
สินค้า: Product A x5, Product B x2

2. ซิงก์ข้อมูลลูกค้าเข้า Google Sheets รายวัน

Trigger: Schedule ทุกวัน 07.00 น. → Odoo Node ดึง Contact ที่ customer_rank > 0 → Google Sheets Node อัปเดต sheet "ลูกค้าทั้งหมด" → Email Node ส่งแจ้ง Sales Manager ว่า report พร้อมแล้ว

ใช้สำหรับทีมขายที่ยังถนัดทำงานใน spreadsheet แต่ต้องการข้อมูลล่าสุดจาก Odoo โดยไม่ต้องเปิด Odoo เองทุกวัน

3. รับ Lead จากเว็บไซต์เข้า Odoo CRM อัตโนมัติ

Trigger: Webhook URL รับ POST request จากฟอร์มติดต่อบนเว็บ (HTML form, Typeform, หรือ Google Form) → Odoo Node สร้าง CRM Lead ใหม่พร้อมข้อมูลผู้ติดต่อ → Activity Node สร้าง activity มอบหมายให้ sales rep โทรกลับภายใน 1 วัน

4. แจ้งเตือนทีมจัดซื้อเมื่อสต็อกต่ำ (ข้ามระบบ)

Trigger: Schedule ทุกวัน 08.00 น. → Odoo Node ดึงสินค้าที่ qty_on_hand < reorder_point → Filter Node คัดเฉพาะสินค้า critical → LINE Node ส่งรายการสินค้าที่ต้องสั่งซื้อให้ทีมจัดซื้อโดยตรง พร้อมลิงก์ไปหน้า RFQ ใน Odoo

5. ส่งรายงานยอดขายรายวันให้ผู้บริหาร

Trigger: Schedule ทุกวัน 18.30 น. → Odoo Node ดึงยอดขายวันนั้น (date_order = วันนี้) → Code Node คำนวณยอดรวม, จำนวน order, ค่าเฉลี่ยต่อ order → Email Node ส่ง HTML email สรุปผลให้ผู้บริหาร


วิธีเริ่มใช้งาน n8n กับ Odoo ทีละขั้น

ขั้นที่ 1: สร้าง API Key ใน Odoo

เปิด Developer Mode (?debug=1 ใน URL) จากนั้นไปที่ Settings > Technical > API Keys กด New ตั้งชื่อ key เช่น n8n-integration แล้วคัดลอก key ที่ได้ไว้ทันที — key จะแสดงเพียงครั้งเดียว

ถ้าไม่เห็นเมนู API Keys ให้เปิด Developer Mode ก่อน: Settings > General Settings > Developer Tools > Activate the developer mode

ขั้นที่ 2: ติดตั้งหรือเปิดใช้ n8n

Self-hosted (แนะนำสำหรับ data control):

docker run -it --rm \
  --name n8n \
  -p 5678:5678 \
  -v n8n_data:/home/node/.n8n \
  n8nio/n8n

เปิด browser ที่ http://localhost:5678 แล้วตั้ง account

n8n Cloud: สมัครที่ n8n.io เลือก plan ที่เหมาะกับจำนวน workflow executions ที่ต้องการ

ขั้นที่ 3: เพิ่ม Odoo Credential ใน n8n

ใน n8n ไปที่ Settings > Credentials > Add Credential เลือกประเภท Odoo แล้วกรอก:

  • Host: URL Odoo เช่น https://mycompany.odoo.com
  • Database: ชื่อฐานข้อมูล Odoo (หาได้จาก URL หรือถามผู้ดูแลระบบ)
  • User: email ที่ login Odoo
  • API Key: key ที่สร้างในขั้นที่ 1

กด Test connection เพื่อยืนยัน

ขั้นที่ 4: สร้าง Workflow แรก

กด New Workflow แล้วเริ่มจาก trigger ที่ง่ายที่สุดคือ Schedule Trigger ตั้งให้รันทุก 15 นาที จากนั้นเพิ่ม Odoo Node ตั้งค่า:

  • Resource: Sale Order
  • Operation: Get Many
  • Filters: [['state','=','sale'],['create_date','>=','{{ $now.minus({minutes: 15}).toISO() }}']]

ดึงข้อมูลออกมาได้แล้ว ขั้นตอนถัดไปคือเพิ่ม node ปลายทาง เช่น LINE, Email, หรือ Google Sheets

ขั้นที่ 5: Map ข้อมูลและทดสอบ

n8n แสดง output ของแต่ละ Node เป็น JSON ให้เห็น สามารถ map field ด้วย expression เช่น:

  • {{ $json.name }} — ชื่อ record
  • {{ $json.amount_total }} — ยอดรวม
  • {{ $json.partner_id[1] }} — ชื่อลูกค้า

กด Execute Workflow เพื่อทดสอบ ตรวจ output แต่ละ step แล้วกด Activate เมื่อพร้อม


สิ่งที่ควรระวังก่อนเริ่ม

Odoo External API ต้องเปิดไว้ — ตรวจสอบว่า xmlrpc ไม่ถูก disable ใน Odoo configuration โดยเฉพาะถ้าใช้ Odoo.sh หรือ custom server

ควบคุม permission ของ API Key — สร้าง Odoo user เฉพาะสำหรับ n8n ที่มีสิทธิ์เท่าที่จำเป็น เช่น ถ้า workflow แค่อ่านข้อมูล ก็ไม่ควรให้ user นั้น write permission

ระวัง Workflow loop — n8n workflow ที่สร้าง record ใน Odoo แล้ว Odoo trigger Webhook กลับไปหา n8n อาจทำให้เกิด infinite loop ออกแบบ trigger condition ให้มี exit condition เสมอ

Error handling — เปิดใช้ Error Workflow ใน n8n เพื่อรับ notification เมื่อ workflow ล้มเหลว ไม่ควรปล่อยให้ workflow fail โดยไม่มีการแจ้งเตือน


n8n กับ Odoo Automated Actions: ใช้ร่วมกันอย่างไร

แนวทางที่ใช้ได้ผลคือใช้ทั้งสองอย่างตามความถนัดของแต่ละเครื่องมือ:

| Use Case | เครื่องมือที่แนะนำ | |---|---| | ส่งอีเมลจาก Odoo template เมื่อ Invoice ค้างชำระ | Odoo Automated Actions | | สร้าง PO อัตโนมัติเมื่อสต็อกต่ำ | Odoo Automated Actions | | ส่ง LINE แจ้งทีมเมื่อ Delivery Order พร้อมส่ง | n8n | | sync ข้อมูลลูกค้าไป Google Sheets ทุกคืน | n8n | | รับ Lead จากเว็บไซต์เข้า Odoo CRM | n8n | | เชื่อม Odoo กับระบบ e-commerce | n8n |

Process automation ที่ดีที่สุดสำหรับ SME ไทยคือการใช้ Odoo Automated Actions จัดการ logic ภายใน Odoo และใช้ n8n จัดการ data flow ระหว่าง Odoo กับระบบอื่น


สรุปและก้าวถัดไป

n8n เปิดโอกาสให้ SME ไทยที่ใช้ Odoo ขยาย automation ออกนอก ERP ได้โดยไม่ต้องลงทุนสูงหรือจ้างนักพัฒนา จุดเริ่มต้นที่ดีคือเลือก workflow เดียวที่ทีมทำด้วยมือซ้ำๆ ทุกวัน เช่น การ copy ข้อมูล Order เข้า LINE group หรือการสร้าง Google Sheets รายงานยอดขาย ทดสอบให้ผ่านก่อน แล้วค่อยขยายไปยัง Use Case ที่ซับซ้อนขึ้น

ถ้า workflow ที่ต้องการซับซ้อนมากหรือต้องการ real-time data processing ที่เร็วกว่า schedule trigger ก็มีทางเลือกเพิ่มเติมเช่น Odoo Webhook ร่วมกับ n8n Webhook Trigger เพื่อให้ทำงาน near-realtime ได้โดยไม่ต้องรอ schedule


For more on Odoo automation, see our guide on Odoo Automated Actions for in-system automation without code.

คำถามที่พบบ่อย

n8n ต่างจาก Odoo Automated Actions อย่างไร

Odoo Automated Actions ทำงานภายใน Odoo เท่านั้น เหมาะกับ trigger ที่เกิดจาก event ในฐานข้อมูล Odoo เช่น ส่งอีเมลเมื่อ Invoice ค้างชำระหรือสร้าง PO เมื่อสต็อกต่ำ ส่วน n8n เชื่อมต่อ Odoo กับระบบภายนอกได้ เช่น LINE, Google Sheets, Slack, Webhook, หรือฐานข้อมูลอื่น ทั้งสองแนวทางไม่ขัดแย้งกันและใช้ร่วมกันได้เพื่อครอบคลุม automation ทุกระดับ

n8n ติดตั้งแบบไหนได้บ้างและมีค่าใช้จ่ายเท่าไหร่

n8n มี 2 แบบ: Self-hosted รันบน server ของคุณเองฟรีสำหรับการใช้งานส่วนตัว/ภายในองค์กร (fair-code license) หรือ n8n Cloud ที่ Managed โดยทีม n8n เริ่มต้นประมาณ $20/เดือนสำหรับ starter plan (ราคาตามผู้ให้บริการระบุ — ผลจริงขึ้นกับบริบท) Self-hosted เหมาะกับ SME ที่มีทีม IT เล็กน้อย Cloud เหมาะกับทีมที่ไม่ต้องการดูแล server เอง

Odoo version ใดที่เชื่อมกับ n8n ได้

n8n รองรับ Odoo ผ่าน XML-RPC API ที่มีมาตั้งแต่ Odoo 10 ดังนั้นจึงใช้ได้กับ Odoo 14, 16, 17, และ Odoo 18 Enterprise หรือ Community เพียงแต่ต้องสร้าง API key ใน Odoo Settings > Technical > API Keys ก่อน (ต้องเปิด Developer Mode)

n8n ปลอดภัยพอที่จะดึงข้อมูล Odoo ออกไปยังภายนอกไหม

n8n รองรับ HTTPS, encrypted credential storage, และ RBAC สำหรับควบคุมว่าใครเข้าถึง workflow ไหนได้ ขอแนะนำให้ใช้ API key แทน password authentication, จำกัด permission ของ API key ให้แคบที่สุด, และตั้ง IP whitelist ถ้า Odoo อยู่บน server ของตัวเอง