วิธีส่งออกคำสั่งซื้อ WooCommerce ไปยัง Google ชีตแบบเรียลไทม์

เผยแพร่แล้ว: 2019-07-17

เมื่อพูดถึงการผสานรวมกับบริการของบุคคลที่สาม มีปลั๊กอินมากมายในระบบนิเวศของ WooCommerce ที่ให้คุณถ่ายโอนข้อมูลไปยัง & จากระบบทุกประเภทได้โดยตรงจาก Zapier ถึง ConstantContact ไปยังระบบช่วยเหลือ เช่น Help Scout

ที่ Tyche เราได้รวมปลั๊กอินบางตัวของเราเข้ากับ Google ปฏิทินในอดีต เนื่องจากปลั๊กอินบางตัวของเราเกี่ยวข้องกับการจองหรือการจัดการวันที่จัดส่งคำสั่งซื้อ ฉันคิดว่าจะสำรวจแนวคิดในการรวมคำสั่งซื้อ WooCommerce กับ Google ชีตตามแนวทางเหล่านี้ หมายความว่าคำสั่งซื้อของ WooCommerce ที่เข้ามาจะถูกเพิ่มลงใน Google ชีตแบบเรียลไทม์

ก่อนที่จะเริ่มเขียนเกี่ยวกับเรื่องนี้ ฉันกำลังดูสิ่งที่มีให้สำหรับการเพิ่มข้อมูลคำสั่งซื้อของ WooCommerce ลงใน Google ชีตโดยตรง มีบทความและปลั๊กอินสองสามข้อ

บทความแรกพูดถึงการบันทึกคำสั่งซื้อ WooCommerce ใหม่ลงใน Google ชีตผ่านส่วนขยาย WooCommerce Zapier อย่างที่คุณทราบ Zapier ให้การผสานรวมกับบริการคลาวด์มากกว่า 1,500 รายการ นี่ไม่ใช่สิ่งที่ฉันต้องการในขณะที่ฉันกำลังพยายามทำให้การผสานรวมนี้สำเร็จโดยไม่ต้องใช้ปลั๊กอิน

และในขณะที่ Woocommerce มีฟังก์ชันมากมายที่พร้อมใช้งาน คำสั่งซื้อของ Woocommerce ไม่สามารถส่งออกไปยัง Google ชีตโดยค่าเริ่มต้นใน WooCommerce

ดังนั้น ในไม่กี่ขั้นตอนถัดไป เราจะดูวิธีการส่งออกคำสั่งซื้อ WooCommerce ไปยัง Google ชีตแบบเรียลไทม์โดยใช้ WooCommerce Webhooks & Apps Script ที่ Google จัดหาให้

คำแนะนำทีละขั้นตอนเกี่ยวกับวิธีการส่งออกคำสั่งซื้อ Woocommerce ไปยัง Google ชีต

ขั้นตอนที่ 1: การสร้าง Google ชีต

ก่อนอื่นคุณต้องสร้าง Google ชีตใหม่ที่จะส่งออกคำสั่งซื้อ WooCommerce ทั้งหมดของคุณ เมื่อสร้างเสร็จแล้ว คุณสามารถเพิ่มฟิลด์ที่คุณต้องการส่งออกไปยัง Google ชีต

WooCommerce export Orders starting with a blank Google Sheet

ฉันได้เพิ่ม 5 ฟิลด์ในชีตของฉัน:

  1. วันที่เพิ่ม – วันที่ที่บันทึกนี้ถูกเพิ่มใน Google ชีต
  2. หมายเลขคำสั่งซื้อ – นี่คือหมายเลขคำสั่งซื้อของ WooCommerce
  3. วันที่สั่งซื้อ – วันที่สั่งซื้อ
  4. สถานะการสั่งซื้อ – สถานะการสั่งซื้อหลังจากวางแล้ว
  5. ลิงก์คำสั่งซื้อ – ลิงก์ไปยังหน้าแก้ไขคำสั่งซื้อของ WooCommerce

ขั้นตอนที่ 2: การเขียนสคริปต์ Google Apps

เมื่อเราสร้างชีตแล้ว เราต้องสร้าง Google Apps Script ซึ่งจะรับผิดชอบในการเพิ่มข้อมูลลงในชีต สคริปต์จะได้รับข้อมูลจาก WooCommerce Webhooks (ซึ่งเราจะเห็นในขั้นตอนต่อไป) และข้อมูลนั้นจะถูกแยกวิเคราะห์และเพิ่มลงในแผ่นงาน

คุณสามารถไปที่เมนูเครื่องมือ & คลิกที่ตัวแก้ไขสคริปต์

Google Sheets Script Editor for woocommerce order information exports

คุณจะเห็นหน้าจอด้านล่างเมื่อคุณเปิด Script Editor

Google Script Editor Blank View

Google มีคุณสมบัตินี้ที่อนุญาตให้เผยแพร่สคริปต์เป็นเว็บแอปได้หากเป็นไปตามเงื่อนไขบางประการ ข้อกำหนดคือ:

  • ประกอบด้วยฟังก์ชัน doGet(e) หรือ doPost(e)
  • ฟังก์ชันส่งคืนอ็อบเจ็กต์ HtmlOutput บริการ HTML หรือออบเจ็กต์ TextOutput ของบริการเนื้อหา

เมื่อแอปพลิเคชันภายนอกส่งคำขอ HTTP GET สคริปต์ของแอปจะเรียกใช้ฟังก์ชัน doGet(e) ในขณะที่แอปพลิเคชันภายนอกส่งคำขอ HTTP POST สคริปต์ของแอปจะเรียกใช้ฟังก์ชัน doPost(e) คำอธิบายโดยละเอียดของเว็บแอป Google Scripts และฟังก์ชันด้านบนมีอยู่ที่นี่

ด้านล่างนี้เป็น 2 ฟังก์ชั่นที่ฉันสร้างในสคริปต์ของฉัน:

หลังจากเพิ่มโค้ดข้างต้นแล้ว สคริปต์ Google ของฉันจะมีลักษณะดังนี้:

Google apps script editor code for fetching woocommerce order information

ขั้นตอนที่ 3: การปรับใช้สคริปต์เป็นเว็บแอป

เมื่อเขียนโค้ดข้างต้นแล้ว เราก็ได้ปฏิบัติตามข้อกำหนดในการปรับใช้เป็นเว็บแอป หมายความว่าตอนนี้สคริปต์สำหรับส่งออกคำสั่งซื้อ Woocommerce แบบเรียลไทม์พร้อมแล้ว

หมายเหตุ: การปรับใช้สคริปต์นี้เป็นเว็บแอปจำเป็นเพื่อให้สามารถฟังคำขอ GET & POST ภายนอกได้

ในการปรับใช้สคริปต์เป็นเว็บแอป คุณต้องเลือกตัวเลือก เผยแพร่ -> ปรับใช้เป็นเว็บแอป

Setting up Woocoomerce export order: Google script deployed as web app

การคลิก “ปรับใช้เป็นเว็บแอป” จะแสดงป๊อปอัปด้านล่าง:

Setting up Woocoomerce export order: Google script deployed as web app

เมื่อปรับใช้เป็นเว็บแอป ทุกครั้งที่คุณปรับใช้ คุณต้องเลือก "ใหม่" ในตัวเลือกเวอร์ชันโปรเจ็ กต์ เฉพาะเมื่อคุณเลือก "ใหม่" การเปลี่ยนแปลงที่ทำในการวนซ้ำนั้นจะมีผล

คุณต้องเลือก "ฉัน" ในตัวเลือก "เรียกใช้แอปเป็น" และควรตั้งค่า "ใครสามารถเข้าถึงแอป" เป็น "ใครก็ได้ แม้กระทั่งไม่ระบุชื่อ"

เมื่อคุณคลิกที่ "อัปเดต" ข้อความด้านล่างจะปรากฏขึ้นเพื่อระบุว่าขณะนี้โครงการได้รับการปรับใช้เป็นเว็บแอปเรียบร้อยแล้ว นอกจากนี้ ยังแสดง URL ในช่อง "URL ของเว็บแอปปัจจุบัน" ด้วย คุณต้องคัดลอก URL นี้เนื่องจากเป็น URL ที่จะใช้เมื่อเราดำเนินการในการตั้งค่าการส่งออกคำสั่งซื้อของ Woocommerce ด้วย WooCommerce webhook ในขั้นตอนถัดไป

Setting up Woocoomerce export order: Google script deployed as web app

ขั้นตอนที่ 4: การสร้างเว็บฮุค WooCommerce

ตอนนี้สคริปต์ของ Google Apps ได้รับการตั้งค่าและปรับใช้เป็นเว็บแอปแล้ว เราจำเป็นต้องเพิ่มเว็บฮุคของ WooCommerce ซึ่งจะเริ่มทำงานทุกครั้งที่มีการสร้างคำสั่งซื้อ

คุณสามารถเพิ่มเว็บฮุคจาก WooCommerce -> การตั้งค่า -> ขั้นสูง -> เมนู Webhooks เมื่อคุณคลิกที่ปุ่ม “เพิ่มเว็บฮุค” คุณจะต้องกรอกข้อมูลในฟิลด์ต่างๆ ดังที่แสดงด้านล่าง:

creating woocommerce webhook to enable woocommerce orders to be exported to google sheet

URL ที่คัดลอกในขั้นตอนก่อนหน้าจากช่อง "URL ของเว็บแอปปัจจุบัน" ต้องอยู่ในฟิลด์ "URL การส่ง" ของเว็บฮุค สิ่งที่จะทำคือทุกครั้งที่มีการสร้างคำสั่งซื้อ คำสั่งซื้อจะส่งข้อมูลคำสั่งซื้อไปยัง URL การจัดส่ง ซึ่งสคริปต์ Google Apps ของเราได้รับการตั้งค่าให้รับฟังคำขอ GET หรือ POST ที่เข้ามา ในกรณีปัจจุบัน ข้อมูลการสั่งซื้อทั้งหมดจะถูกส่งผ่าน HTTP POST

เมื่อสร้างเว็บฮุคแล้ว เว็บฮุคจะปรากฏในรายการเว็บฮุคที่มีสถานะใช้งานอยู่:

creating woocommerce webhook to enable woocommerce orders to be exported to google sheet

คุณอาจมีหรือไม่มีเว็บฮุคเพิ่มเติมในการตั้งค่าของคุณ ฉันมีเว็บฮุคอื่นที่ตั้งค่าไว้ซึ่งส่งการแจ้งเตือนเกี่ยวกับ Slack เมื่อมีการอัปเดตคำสั่งซื้อ

ขั้นตอนที่ 5: เวลาสำหรับการกระทำบางอย่าง

เมื่อสั่งซื้อในร้านค้า WooCommerce ของคุณ ในอีก 1 หรือ 2 นาที ข้อมูลคำสั่งซื้อนั้นจะปรากฏใน Google ชีตในแถวสุดท้าย

WooCommerce Order Placed

หลังจากวางคำสั่งซื้อข้างต้นแล้ว จะใช้เวลาประมาณ 2 นาทีก่อนที่ข้อมูลที่เกี่ยวข้องจะปรากฏใน Google ชีต:

Google sheet with WooCommerce orders information exported from WordPress

เมื่อคุณยังคงได้รับคำสั่งซื้อจากร้านค้า WooCommerce ของคุณ Google ชีตจะผนวกข้อมูลการสั่งซื้อด้านล่างแถวที่มีข้อมูลล่าสุดโดยอัตโนมัติ ฉันวางคำสั่งซื้อ 4 รายการหลังจากหมายเลขคำสั่งซื้อด้านบน 1166:

WooCommerce Order information page

และหลังจากวางคำสั่งซื้อทุกครั้ง Google ชีตก็เติมข้อมูลคำสั่งซื้อภายใน 10 วินาทีถึง 1 นาที:

Google sheet with WooCommerce exported orders

ขณะนี้คอลัมน์ลิงก์คำสั่งซื้อว่างเปล่าเนื่องจากฉันยังไม่ได้ใส่ข้อมูลใดๆ อย่างไรก็ตาม คุณสามารถแยกวิเคราะห์ข้อมูลการสั่งซื้อได้ตามต้องการ & เติมข้อมูลใด ๆ จากคำสั่งซื้อ เช่น ยอดรวมของคำสั่งซื้อ วิธีการชำระเงิน ผลิตภัณฑ์ ฯลฯ

ข้อมูลเมตาของคำสั่งซื้อ

เมื่อ WooCommerce ดำเนินการ order.created ระบบจะส่งข้อมูลเมตาจำนวนมากเกี่ยวกับคำสั่งซื้อ คุณสามารถค้นหาข้อมูลทั้งหมดด้านล่าง ซึ่งนำมาจากคำสั่งซื้อตัวอย่างของฉัน เมตาดาต้านี้ยังรวมถึงฟิลด์วันที่จัดส่งและค่าธรรมเนียมในการจัดส่ง ซึ่งเพิ่มจากปลั๊กอินวันที่จัดส่งคำสั่งซื้อของเราเพื่อทำให้การจัดส่งของร้านค้าเป็นไปโดยอัตโนมัติ คำสั่งซื้อมีสินค้า 2 รายการ ผลิตภัณฑ์ธรรมดา 1 รายการและสินค้าผันแปร:

กำลังดึงข้อมูลการสั่งซื้อ Woocommerce แบบเต็ม

อย่างที่คุณเห็น ข้อมูลข้างต้นที่ฉันดึงมามีจำกัดมาก ตัวอย่างด้านล่างสาธิตวิธีการดึงข้อมูลการสั่งซื้อโดยละเอียดซึ่งรวมถึงฟิลด์ต่อไปนี้:

เลขที่ใบสั่งซื้อ
วันสั่ง
สถานะการสั่งซื้อ
ชื่อผลิตภัณฑ์
ปริมาณสินค้า
สินค้าทั้งหมด
ยอดสั่งซื้อ
อีเมลเรียกเก็บเงิน
การเรียกเก็บเงิน ชื่อ
การเรียกเก็บเงิน นามสกุล
วิธีการชำระเงิน
วิธีจัดส่ง
ค่าจัดส่ง

แผ่นงาน Google ของฉันมีลักษณะดังนี้:

Exporting Woocommerce orders to Google sheet with detailed order information

สคริปต์ Google Apps ของฉันเพื่อดึงข้อมูลทั้งหมดข้างต้นได้รับการแก้ไขแล้วดังที่แสดงด้านล่าง (โปรดอย่าลืมปรับใช้เป็นเว็บแอปใหม่ทุกครั้งที่คุณทำการเปลี่ยนแปลงสคริปต์ Google Apps):

เมื่อคุณทำการสั่งซื้อ แผ่นงานจะเริ่มเติมข้อมูลดังที่แสดงด้านล่าง:

นี่คือคำสั่งที่ฉันวางไว้:

Woocommerce orders getting exported directly to Google sheet in real time (as they come in))

จากคำสั่งซื้อ #1214, 1217 & 1220 ข้างต้น คุณสามารถดูคำสั่งซื้อทั้งหมดที่สร้างขึ้นด้านล่างพร้อมข้อมูลเพิ่มเติม Google sheet containing all order information from WooCommerce

ดังนั้น ด้วยความช่วยเหลือจากการปรับเปลี่ยนบางอย่าง เราจึงได้รับข้อมูลการสั่งซื้อฉบับสมบูรณ์ใน Google ชีต

นี่เป็นวิธีที่ง่ายและตรงไปตรงมาที่สุดที่คุณสามารถใช้เพื่อส่งออกคำสั่งซื้อ Woocommerce ของคุณใน WordPress คำสั่งซื้อจะถูกส่งออกในแบบเรียลไทม์และคุณไม่จำเป็นต้องดำเนินการใดๆ เพิ่มเติมเมื่อมีคำสั่งซื้อใหม่