n8n Thai
by n8n Thai

n8n x Shopee: ระบบจัดการร้าน Shopee อัตโนมัติ

วิธีเชื่อม n8n กับ Shopee Partner API เพื่อดึงออเดอร์, อัปเดตสต็อก, และแจ้งเตือน LINE แบบอัตโนมัติสำหรับร้านค้าบน Shopee

n8n x Shopee: ระบบจัดการร้าน Shopee อัตโนมัติ

เชื่อม n8n กับ Shopee ได้จริงไหม?

ได้จริง และทำได้หลายอย่าง Shopee เปิด Partner API สำหรับผู้ขายที่มีสถานะ Preferred Seller หรือขึ้นไป ซึ่งให้เข้าถึงข้อมูลออเดอร์, สินค้า, สต็อก และข้อมูลร้านค้าผ่าน REST API เมื่อนำมาใช้กับ n8n จะสร้าง Workflow อัตโนมัติที่ประหยัดเวลาได้มาก

บทความนี้อยู่ในชุด Automation สำหรับร้านค้าออนไลน์ด้วย n8n ซึ่งครอบคลุม e-commerce ทุกแพลตฟอร์ม

ข้อกำหนดเบื้องต้น

ก่อนเริ่ม ต้องมีสิ่งเหล่านี้พร้อม

  • บัญชีผู้ขาย Shopee ที่ผ่านเกณฑ์เข้าถึง Partner API (โดยทั่วไปต้องเป็น Preferred Seller หรือมียอดขายถึงเกณฑ์)
  • สมัคร Shopee Open Platform ที่ open.shopee.com เพื่อรับ Partner ID และ Partner Key
  • n8n instance ที่เข้าถึงได้จากภายนอก (ต้องการสำหรับ Webhook) อ่านวิธีติดตั้งที่ คู่มือ n8n Docker

ขั้นตอนที่ 1: ขอ API Access จาก Shopee

1.1 ไปที่ Shopee Open Platform แล้ว Login ด้วยบัญชีผู้ขาย

1.2 สร้าง App ใหม่ในหน้า Developer Portal กรอกข้อมูล App เช่น App Name, Description และ Redirect URL (ใช้ URL ของ n8n instance เช่น https://n8n.yourdomain.com/oauth2/callback)

1.3 บันทึก Partner ID และ Partner Key ที่ได้รับ — สองค่านี้จำเป็นสำหรับการ authenticate ทุก request

1.4 ดำเนินการ OAuth 2.0 Authorization Flow เพื่อรับ Access Token และ Shop ID สำหรับร้านของคุณ

ขั้นตอนที่ 2: ตั้งค่า Credentials ใน n8n

เนื่องจาก n8n ไม่มี Shopee node สำเร็จรูป ต้องใช้ HTTP Request node แทน แต่สามารถบันทึก credentials ไว้ใน n8n ได้

2.1 ไปที่ Settings → Credentials → New Credential เลือกประเภท “Generic Credential”

2.2 บันทึกค่าต่อไปนี้เป็น variables:

  • shopee_partner_id
  • shopee_partner_key
  • shopee_access_token
  • shopee_shop_id

2.3 Shopee API ใช้ HMAC-SHA256 signature ทุก request ต้องสร้าง signature โดยคำนวณจาก partner_id + api_path + timestamp + access_token + shop_id แล้ว sign ด้วย partner_key

ใน n8n ให้ใช้ Code node (JavaScript) สำหรับสร้าง signature ก่อน HTTP Request node

ขั้นตอนที่ 3: Workflow — ดึงออเดอร์ใหม่

นี่คือ Workflow พื้นฐานที่สุด: ดึงออเดอร์ใหม่จาก Shopee ทุก 5 นาที

โครงสร้าง Workflow

Schedule Trigger (ทุก 5 นาที)
→ Code node (สร้าง Shopee Signature)
→ HTTP Request (GET /order/get_order_list)
→ IF node (มีออเดอร์ใหม่?)
→ Loop Over Items
→ HTTP Request (GET /order/get_order_detail)
→ Google Sheets (Append Row)
→ LINE Notify (ส่งแจ้งเตือน)

API Endpoint สำหรับออเดอร์

GET https://partner.shopeemobile.com/api/v2/order/get_order_list

Parameters ที่สำคัญ:

  • time_range_field: create_time
  • time_from: Unix timestamp เริ่มต้น
  • time_to: Unix timestamp สิ้นสุด
  • order_status: READY_TO_SHIP, PROCESSED, SHIPPED, COMPLETED
  • page_size: จำนวนออเดอร์ต่อหน้า (max 100)

ขั้นตอนที่ 4: Workflow — อัปเดตสต็อกอัตโนมัติ

เมื่อมีออเดอร์ใหม่ ต้องหักสต็อกใน Shopee และแพลตฟอร์มอื่น

API Endpoint สำหรับสต็อก

POST https://partner.shopeemobile.com/api/v2/product/update_stock

Body ที่ต้องส่ง:

{
  "item_list": [
    {
      "item_id": 123456,
      "model_list": [
        {
          "model_id": 789,
          "normal_stock": 50
        }
      ]
    }
  ]
}

แนะนำให้เก็บข้อมูลสต็อกหลักไว้ใน Google Sheets แล้วให้ n8n อ่านค่าจากนั้นแล้วส่งไปอัปเดตทุกแพลตฟอร์ม ดูวิธีการแบบละเอียดได้ที่ ซิงค์สต็อกข้ามแพลตฟอร์ม

ขั้นตอนที่ 5: ตั้ง Webhook รับ Order Event แบบ Real-time

แทนที่จะ poll ทุก 5 นาที Shopee รองรับ Push Notification ที่ส่ง Webhook มาให้ทันทีเมื่อมี event ใหม่

5.1 ใน n8n สร้าง Webhook node ใหม่ เลือก HTTP Method: POST บันทึก URL ที่ได้

5.2 ไปที่ Shopee Open Platform → App Settings → Webhook ตั้งค่า Webhook URL เป็น URL จาก n8n

5.3 เลือก Event ที่ต้องการรับ เช่น:

  • ORDER_STATUS — ออเดอร์เปลี่ยนสถานะ
  • SHOP_UPDATE — ข้อมูลร้านเปลี่ยนแปลง
  • ITEM_UPDATE — สินค้าถูกอัปเดต

5.4 Shopee จะส่ง request มาพร้อม Header Authorization ที่ต้อง verify ก่อนประมวลผล ใช้ Code node ตรวจสอบ signature ก่อนทำงานต่อ

ข้อควรระวัง

Rate Limit: Shopee จำกัด API call ตาม tier ของ Partner เช่น 1,000 calls ต่อนาทีสำหรับ Standard Partner หากเกินจะได้รับ Error 429

Token Expiry: Access Token มีอายุ 4 ชั่วโมง ต้องสร้าง Workflow แยกต่างหากสำหรับ refresh token อัตโนมัติโดยใช้ Refresh Token ก่อนที่จะหมดอายุ

Timezone: Shopee API ใช้ UTC timestamp ต้องแปลงเป็นเวลาไทย (UTC+7) เมื่อแสดงผล

Sandbox vs Production: ทดสอบใน Sandbox environment ก่อนเสมอ Endpoint สำหรับ Sandbox คือ partner.uat.shopeemobile.com

สรุป

การเชื่อม n8n กับ Shopee ต้องใช้ความเข้าใจ Shopee Partner API และการสร้าง HMAC signature เพิ่มเติม แต่เมื่อตั้งค่าเสร็จแล้ว ระบบจะทำงานได้อัตโนมัติสมบูรณ์ เริ่มจาก Workflow ดึงออเดอร์ก่อน แล้วค่อยขยายไปซิงค์สต็อกและแจ้ง LINE

อยากเรียน n8n แบบเป็นระบบ ตั้งแต่เริ่มต้นจนสร้าง Workflow ใช้งานจริงได้ ลองดู คอร์สสอน n8n ที่ aiunlock.co

Related posts