บทความนี้อธิบายวิธีส่งการแจ้งเตือนธุรกรรม เช่น การสั่งซื้อสำเร็จหรือการจัดส่งสำเร็จ เป็นข้อความแจ้งเตือน LINE โดยมี Klaviyo Flow เป็นตัวกระตุ้น การแจ้งเตือนส่งถึงลูกค้าตามหมายเลขโทรศัพท์ได้แม้ลูกค้ายังไม่ได้เพิ่มเพื่อน
ข้อความแจ้งเตือน LINE คืออะไร
ข้อความแจ้งเตือน LINE คือข้อความเฉพาะสำหรับการแจ้งเตือนธุรกรรมที่ได้รับการรับรองจาก LY Corporation ซึ่งส่งถึงลูกค้าตามหมายเลขโทรศัพท์ได้แม้ยังไม่ได้เพิ่มเพื่อน
การส่งข้อความ LINE ทั่วไปจะถึงเฉพาะเพื่อนเท่านั้น แต่ข้อความแจ้งเตือน LINE จะส่งถึงเมื่อหมายเลขโทรศัพท์ของลูกค้าตรงกับหมายเลขที่ลงทะเบียนไว้กับบัญชี LINE ของลูกค้า ข้อความสร้างจากเทมเพลตที่ได้รับการรับรอง (เช่น การแจ้งการจัดส่งสำเร็จ การแจ้งคำสั่งซื้อสำเร็จ) โดยแทรกข้อมูล เช่น หมายเลขคำสั่งซื้อหรือหมายเลขติดตามพัสดุ
ข้อควรทราบก่อนใช้งานมีดังนี้
- ใช้ได้เฉพาะการแจ้งเตือนที่เกี่ยวกับธุรกรรม (การซื้อ การจัดส่ง การจอง ฯลฯ) ไม่สามารถใช้เพื่อการโฆษณาหรือส่งเสริมการขาย
- ต้องยื่นคำขอและได้รับการอนุมัติจาก LY Corporation ก่อนใช้งาน
- รูปแบบข้อความเป็นไปตามเทมเพลตที่ได้รับการรับรอง ไม่สามารถออกแบบเลย์เอาต์อิสระได้
เงื่อนไขการใช้งาน
ต้องมีครบ 3 อย่าง ได้แก่ การเชื่อมต่อ Klaviyo การอนุมัติให้ใช้ข้อความแจ้งเตือน LINE และหมายเลขโทรศัพท์ของลูกค้า
- บัญชีทางการ LINE ได้รับอนุมัติให้ใช้ข้อความแจ้งเตือน LINE แล้ว
- เชื่อมต่อ Klaviyo ใน Lumo เรียบร้อยแล้ว
- โปรไฟล์ Klaviyo ของผู้รับมีหมายเลขโทรศัพท์ในรูปแบบมีรหัสประเทศ (เช่น
+66812345678)
การแจ้งเตือนจะส่งถึงเมื่อหมายเลขโทรศัพท์ในโปรไฟล์ Klaviyo ตรงกับหมายเลขที่ลงทะเบียนกับบัญชี LINE ของลูกค้า และลูกค้าอนุญาตให้รับข้อความแจ้งเตือนฝั่ง LINE
ภาพรวมของการตั้งค่า
สร้าง "ข้อความแจ้งเตือน LINE + ข้อความส่งอัตโนมัติ + Klaviyo Flow" เป็น 1 ชุดต่อการแจ้งเตือน 1 ประเภท
| ขั้นตอน | สิ่งที่สร้างหรือตั้งค่า | ที่ไหน |
|---|---|---|
| 1 | สร้างข้อความแจ้งเตือน LINE (เทมเพลต) | Lumo |
| 2 | สร้างข้อความส่งอัตโนมัติ | Lumo |
| 3 | รับข้อมูลการเชื่อมต่อ Klaviyo Flow | Lumo |
| 4 | ตั้งค่า Webhook action ใน Flow | Klaviyo |
| 5 | ทดสอบแล้วเปิดใช้งาน | Klaviyo |
หากต้องการส่งทั้งการสั่งซื้อสำเร็จและการจัดส่งสำเร็จ ให้สร้าง 2 ชุด
สร้างข้อความแจ้งเตือน LINE
เปิดเมนูด้านข้าง "ระบบอัตโนมัติ" > "ข้อความแจ้งเตือน LINE" แล้วสร้างจากเทมเพลตที่ได้รับการรับรองซึ่งตรงกับการใช้งาน
- เลือก "สร้างข้อความแจ้งเตือน LINE"
- เลือกภูมิภาคและคีย์เทมเพลต สำหรับการจัดส่งมักใช้เทมเพลตประเภทแจ้งการจัดส่งสำเร็จ สำหรับการสั่งซื้อมักใช้เทมเพลตประเภทแจ้งคำสั่งซื้อหรือการซื้อสำเร็จ
- ในรายการแทรกข้อมูล เลือกคีย์ของรายการที่ต้องการแสดง (หมายเลขติดตามพัสดุ ชื่อสินค้า ยอดชำระ ฯลฯ) แล้วกรอกค่าที่จะแสดง ค่าที่เปลี่ยนตามคำสั่งซื้อให้ใช้ตัวแปรแทรกข้อมูล
- เลือกป้ายกำกับปุ่ม CTA และตั้งค่า URL เช่น ปุ่มตรวจสอบสถานะการจัดส่งสำหรับการจัดส่ง หรือปุ่มดูประวัติคำสั่งซื้อสำหรับการซื้อ
- หากใช้รายการเน้น ข้อความที่แสดงต้องไม่เกิน 15 ตัวอักษร หากใช้ตัวแปรจะนับจากข้อความหลังการแทนที่
วิธีเขียนตัวแปรแทรกข้อมูล
ในค่าที่แสดงและ URL ของปุ่ม ใช้รูปแบบ {{ data.ชื่อคีย์ }} เพื่อแทรกข้อมูลคำสั่งซื้อที่ส่งมาจาก Klaviyo
ตัวแปรหลักที่ใช้ได้มีดังนี้ ค่าของตัวแปรจะถูกส่งจาก Klaviyo ผ่าน JSON body ที่ได้รับจากข้อมูลการเชื่อมต่อ Klaviyo Flow ในขั้นตอนถัดไป
| ตัวแปร | เนื้อหา | ทริกเกอร์ที่ใช้ได้ |
|---|---|---|
{{ data.orderNumber }} |
หมายเลขคำสั่งซื้อ | Placed Order / Fulfilled Order |
{{ data.orderDate }} |
วันที่สั่งซื้อ | Placed Order / Fulfilled Order |
{{ data.productName }} |
ชื่อสินค้า (ชิ้นแรก) | Placed Order / Fulfilled Order |
{{ data.totalPrice }} |
ยอดคำสั่งซื้อ | Placed Order / Fulfilled Order |
{{ data.orderStatusUrl }} |
URL หน้าสถานะคำสั่งซื้อ | Placed Order / Fulfilled Order |
{{ data.trackingNumber }} |
หมายเลขติดตามพัสดุ | เฉพาะ Fulfilled Order |
{{ data.shippedDate }} |
วันที่จัดส่ง | เฉพาะ Fulfilled Order |
{{ data.trackingUrl }} |
URL หน้าติดตามการจัดส่ง | เฉพาะ Fulfilled Order |
{{ data.email }} |
อีเมลของลูกค้า (เข้ารหัส URL แล้ว) | Placed Order / Fulfilled Order |
- ให้เขียนสัญลักษณ์สกุลเงินไว้ในค่าที่แสดง (เช่น
฿{{ data.totalPrice }}) - ตัวแปรเกี่ยวกับการจัดส่ง เช่น หมายเลขติดตามพัสดุ จะไม่มีค่าใน Flow ของ Placed Order อย่าใช้ในเทมเพลตแจ้งการสั่งซื้อสำเร็จ
-
{{ data.email }}เข้ารหัส URL ไว้แล้ว จึงนำไปใช้เป็นพารามิเตอร์ใน URL ของปุ่มได้ทันที แต่ไม่เหมาะกับการนำไปแสดงบนหน้าจอ
เชื่อมต่อจากการแจ้งเตือนไปสู่การเชื่อม ID
เมื่อตั้งค่า URL ของ Custom QR Code สำหรับเชื่อม ID ไว้ที่ URL ของปุ่ม CTA ลูกค้าที่ได้รับการแจ้งเตือนจะเพิ่มเพื่อนและเชื่อม ID ได้ครบในครั้งเดียวจากปุ่มนั้น
- สร้าง Custom QR Code โดยเลือกประเภทการเชื่อมต่อเป็น 「การเชื่อมต่อ Klaviyo」 และตั้งค่าให้แทรกอีเมล แล้วออก URL
- แทนที่ส่วนที่แทรกอีเมลใน URL ที่ออกมาด้วย
{{ data.email }}(เช่น ทำให้ส่วนท้ายเป็น?e={{ data.email }}) - ตั้งค่า URL ที่แทนที่แล้วให้กับ URL ของปุ่ม CTA ในข้อความแจ้งเตือน LINE
ใช้เป็นเส้นทางส่งการแจ้งเตือนถึงลูกค้าก่อนเพิ่มเพื่อน แล้วชวนให้เป็นเพื่อน LINE ต่อได้ วิธีสร้าง Custom QR Code อธิบายไว้ที่ เชื่อม ID ระหว่างโปรไฟล์ Klaviyo กับเพื่อน LINE
สร้างข้อความส่งอัตโนมัติ
เลือกประเภทข้อความเป็น "ข้อความแจ้งเตือน LINE" แล้วระบุเทมเพลตที่สร้างไว้
- เปิดเมนูด้านข้าง "ระบบอัตโนมัติ" > "ส่งอัตโนมัติ" แล้วสร้างข้อความใหม่
- เลือกประเภทข้อความเป็น "ข้อความแจ้งเตือน LINE"
- เลือกข้อความแจ้งเตือน LINE ที่สร้างไว้เป็นเทมเพลต แล้วบันทึก
ข้อความส่งอัตโนมัติที่เลือกข้อความแจ้งเตือน LINE จะเพิ่มข้อความประเภทอื่นไม่ได้ 1 ข้อความส่งอัตโนมัติ = การแจ้งเตือน 1 ประเภท
รับข้อมูลการเชื่อมต่อ Klaviyo Flow
เปิด "ข้อมูลการเชื่อมต่อ Klaviyo Flow" ในหน้ารายละเอียดของข้อความส่งอัตโนมัติ เพื่อรับค่าทั้งหมดที่ต้องตั้งใน Webhook action ของ Klaviyo
- ในหน้ารายละเอียดของข้อความส่งอัตโนมัติที่สร้าง เลือก "ข้อมูลการเชื่อมต่อ Klaviyo Flow"
- เลือกบัญชีทางการ LINE ที่จะใช้ส่ง
- จดค่า Destination URL, ส่วนหัว (Key / Value) และ JSON body โดย JSON body คัดลอกได้ด้วย "คัดลอก JSON"
JSON body มีการตั้งค่าดึงข้อมูลคำสั่งซื้อที่สอดคล้องกับตัวแปรแทรกข้อมูล และคีย์ป้องกันการส่งซ้ำ (idempotencyKey) อยู่แล้ว โดยทั่วไปวางตามที่คัดลอกมาก็ใช้งานได้
คีย์ป้องกันการส่งซ้ำเป็นกลไกที่ทำให้ส่งการแจ้งเตือนเพียงครั้งเดียว แม้ Klaviyo จะส่ง Webhook ซ้ำหรือ Flow ทำงานซ้ำซ้อนจนอีเวนต์ของคำสั่งซื้อเดียวกันถูกส่งมาซ้ำ ลูกค้าคนเดียวกันจะไม่ได้รับการแจ้งเตือนเดียวกัน 2 ครั้ง หากใช้ JSON body ที่ดึงมาก่อนหน้านี้ ให้ดึง JSON ล่าสุดมาวางใหม่เพื่อให้มีผล
สร้าง Flow ใน Klaviyo
สร้าง Flow โดยใช้ทริกเกอร์ "Placed Order" สำหรับการสั่งซื้อสำเร็จ และ "Fulfilled Order" สำหรับการจัดส่งสำเร็จ แล้วตั้งค่า Webhook action ด้วยค่าที่รับมา
เลือกทริกเกอร์
| การแจ้งเตือนที่ต้องการส่ง | ทริกเกอร์ที่เลือก | จังหวะที่ทำงาน |
|---|---|---|
| การสั่งซื้อสำเร็จ | Placed Order | เมื่อคำสั่งซื้อได้รับการยืนยัน |
| การจัดส่งสำเร็จ | Fulfilled Order | เมื่อคำสั่งซื้อทั้งหมดถูกจัดส่งแล้ว |
อย่าเลือก "Ordered Product" ที่ชื่อคล้ายกัน เพราะจะทำงานทีละชิ้นสินค้าในคำสั่งซื้อ ทำให้ลูกค้าคนเดียวได้รับการแจ้งเตือนหลายครั้ง
ตั้งค่า Webhook action
- เพิ่ม action "Webhook" ใน Flow
- เลือก HTTP method เป็น "POST" และตั้งค่า Destination URL
- ตั้งค่า custom header ด้วย Key และ Value ที่จดไว้
- วางเนื้อหาที่คัดลอกลงใน JSON body
หากสร้างทั้ง Flow การสั่งซื้อสำเร็จและการจัดส่งสำเร็จ ให้วาง JSON body ของข้อความส่งอัตโนมัติที่ตรงกับแต่ละ Flow
ตรวจสอบการแทรกข้อมูลคำสั่งซื้อ
ตำแหน่งอ้างอิงข้อมูลคำสั่งซื้อใน JSON body อาจต่างกันตามการตั้งค่าร้าน ให้ตรวจสอบด้วย Preview Webhook ของ Klaviyo ว่ามีค่าจริงถูกแทรกเข้ามา
หากรายการใดว่างเปล่าหรือแสดงเป็น "None" ในพรีวิว ให้ตรวจสอบข้อมูลอีเวนต์ของ Klaviyo แล้วปรับตัวแปรที่ขึ้นต้นด้วย event. ใน JSON body ให้ตรงกับอีเวนต์จริง
ตรวจสอบก่อนเปิดใช้งาน
ก่อนเผยแพร่ ให้ยืนยันการแทรกข้อมูลและการส่งถึงจริงด้วย Preview Webhook และโปรไฟล์ทดสอบ
- เปิด "Preview Webhook" ใน Webhook action ของ Klaviyo แล้วยืนยันว่าแต่ละรายการ เช่น หมายเลขคำสั่งซื้อ ถูกแทรกด้วยค่าจริง
- สร้างอีเวนต์จริงด้วยโปรไฟล์ทดสอบที่ลงทะเบียนหมายเลขโทรศัพท์ของตนเอง แล้วยืนยันว่าการแจ้งเตือนมาถึง LINE
- หากไม่มีปัญหา ให้ตั้ง Flow เป็น Live (เผยแพร่)
- หลังบันทึก ให้เปิดหน้า Flow อีกครั้งและตรวจสอบว่า Webhook action ไม่ได้กลับเป็น Draft หากยังเป็น Draft จะไม่มีการส่งการแจ้งเตือน
หากทดสอบแล้วไม่ได้รับ ให้ตรวจสอบก่อนว่าหมายเลขโทรศัพท์ในโปรไฟล์ Klaviyo ตรงกับหมายเลขที่ลงทะเบียนกับบัญชี LINE ของตนเอง
การตั้งค่าสำหรับร้านที่มีการจัดส่งบางส่วน
หากแบ่งจัดส่งคำสั่งซื้อเดียวหลายครั้ง Fulfilled Order จะทำงานเมื่อคำสั่งซื้อทั้งหมดถูกจัดส่งแล้วเท่านั้น
- หากต้องการแจ้งเตือนทุกครั้งที่จัดส่งบางส่วน ให้สร้าง Flow แยกด้วยทริกเกอร์ "Fulfilled Partial Order"
- เพื่อป้องกันการส่งซ้ำ ให้เพิ่ม trigger filter "HasPartialFulfillments is false" ใน Flow ฝั่ง Fulfilled Order (เป็นการตั้งค่าที่ Klaviyo แนะนำ)
- ใน Flow ของ Fulfilled Partial Order ให้ตรวจสอบด้วย Preview Webhook ว่าค่า
idempotencyKeyใน JSON body เปลี่ยนตามการจัดส่งแต่ละครั้ง หากค่าไม่เปลี่ยน การแจ้งเตือนการจัดส่งครั้งที่ 2 เป็นต้นไปอาจถูกตัดสินว่าซ้ำและไม่ถูกส่ง กรณีนี้ให้ปรับคีย์ให้เป็นค่าที่ไม่ซ้ำในแต่ละการจัดส่ง (เช่น หมายเลขติดตามพัสดุ)
ร้านที่ไม่มีการแบ่งจัดส่งไม่จำเป็นต้องตั้งค่านี้
เมื่อพบปัญหา
ปัญหาที่พบบ่อยในการส่งข้อความแจ้งเตือน LINE จาก Flow และจุดที่ควรตรวจสอบมีดังนี้
| อาการ | จุดที่ควรตรวจสอบ |
|---|---|
| การแจ้งเตือนไม่ถึง | ตรวจสอบว่าหมายเลขโทรศัพท์ในโปรไฟล์ Klaviyo ตรงกับหมายเลขที่ลงทะเบียนกับบัญชี LINE ของลูกค้า รูปแบบมีรหัสประเทศ (เช่น +66812345678) เชื่อถือได้ที่สุด และตรวจสอบว่าได้รับอนุมัติให้ใช้ข้อความแจ้งเตือน LINE แล้ว |
| แสดง "None" หรือค่าว่าง | Klaviyo ไม่สามารถดึงค่าตัวแปรได้ ตรวจสอบข้อมูลอีเวนต์ด้วย Preview Webhook แล้วปรับตัวแปรที่ขึ้นต้นด้วย event. ใน JSON body |
| การส่งล้มเหลว | ตรวจสอบว่าข้อความที่แสดงของรายการเน้นไม่เกิน 15 ตัวอักษรหลังการแทนที่ตัวแปร ผลการส่งดูได้ในหน้ารายละเอียดของข้อความส่งอัตโนมัติ |
| ส่งถึงช้า | การประมวลผลฝั่ง Klaviyo อาจทำให้ Webhook ทำงานช้าหลายสิบนาทีถึงราว 1 ชั่วโมง การตรวจสอบการตั้งค่าให้ใช้ Preview Webhook และการส่งทดสอบ |
| เกิดข้อผิดพลาดการยืนยันตัวตน | ตรวจสอบว่า Key และ Value ของส่วนหัว Webhook เป็นค่าล่าสุด หากออกคีย์ยืนยันใหม่ ต้องอัปเดตค่าฝั่ง Klaviyo Flow ด้วย |
| Flow ไม่ทำงาน | ตรวจสอบว่า Webhook action เป็น Live (เผยแพร่) อยู่ หลังบันทึกอาจกลับเป็น Draft ได้ |
| ได้รับการแจ้งเตือนเดียวกัน 2 ครั้ง | ตรวจสอบว่า JSON body มีคีย์ป้องกันการส่งซ้ำ (idempotencyKey) อยู่หรือไม่ ดึง JSON ล่าสุดจาก 「ข้อมูลการเชื่อมต่อ Klaviyo Flow」 มาวางใหม่ ระบบจะป้องกันการส่งซ้ำโดยอัตโนมัติ |
| ต้องการส่งข้อความ LINE ทั่วไปจาก Flow | การส่งทั่วไปสำหรับเพื่อน (การ์ดสินค้า Rich Message ฯลฯ) เป็นการตั้งค่าคนละแบบ อธิบายไว้ที่ ส่งข้อความ LINE จาก Klaviyo Flow |