หากคุณเคยเลือกซื้อสินค้าบนหน้าร้านค้าออนไลน์แบบกำหนดเองที่ไม่ได้ดูเหมือนเทมเพลตมาตรฐาน ก็มีความเป็นไปได้สูงที่ API ของ headless commerce จะอยู่เบื้องหลังการทำงานนั้น API ของ headless commerce คืออินเทอร์เฟซที่ระบบแบ็คเอนด์ของอีคอมเมิร์ซเปิดเผย เพื่อให้หน้าร้านค้าใดๆ ก็ตามสามารถอ่านข้อมูลสินค้า สร้างรถเข็น และสั่งซื้อได้ โดยไม่ต้องผูกติดกับธีมในตัว คำอธิบายนี้จะครอบคลุมความหมายของสิ่งนั้น ความเกี่ยวข้องกับ composable commerce และ MACH และเหตุผลว่าทำไมทีมหน้าร้านค้าและทีมพาร์ทเนอร์ของคุณจึงอยู่รอดหรือล้มเหลวด้วยสัญญา API นั้น มันตั้งอยู่บนแนวคิดที่ว่า ซอฟต์แวร์กำลังเปลี่ยนไปสู่ headless และ API ของคุณคือผลิตภัณฑ์แล้ว
“Headless” ในบริบทของอีคอมเมิร์ซหมายถึงอะไร
แพลตฟอร์มอีคอมเมิร์ซแบบดั้งเดิมมักจะมาในรูปแบบเดียวทั้งหมด แค็ตตาล็อกสินค้า รถเข็น ชำระเงิน และหน้า HTML ที่แสดงผลทั้งหมดอยู่ในระบบเดียวกัน คุณปรับแต่งธีม ปรับเปลี่ยนเล็กน้อย แล้วก็พร้อมใช้งาน
Headless commerce แยกสิ่งนั้นออกเป็นสองส่วน แบ็คเอนด์ ซึ่งมักเรียกว่าเอนจิ้นอีคอมเมิร์ซ จะเก็บแค็ตตาล็อกสินค้า ราคาคงคลัง รถเข็น และตรรกะการสั่งซื้อไว้ ส่วนฟรอนต์เอนด์ ซึ่งเป็นหน้าร้านค้าของคุณ จะกลายเป็นแอปแยกต่างหากที่คุณสร้างขึ้นได้ตามต้องการ สิ่งเดียวที่เชื่อมโยงกันคือ API
ดังนั้น "หัว" คือชั้นการนำเสนอ การเปลี่ยนไปใช้ Headless หมายถึงการถอดส่วนหัวที่ตายตัวออก และเปิดเผยส่วนตัว ซึ่งคือตรรกะอีคอมเมิร์ซ ผ่าน API แทน เว็บไซต์ React แอปพลิเคชันมือถือแบบ Native หน้าจอสมาร์ทตู้เย็น หรือผู้ช่วยเสียง ล้วนสามารถสื่อสารกับแบ็คเอนด์เดียวกันได้ เพราะทั้งหมดพูดภาษา API เดียวกัน
การแยกส่วนนี้คือจุดสำคัญทั้งหมด ทีมฟรอนต์เอนด์ของคุณสามารถเลือกเฟรมเวิร์กของตนเองและเผยแพร่ตามกำหนดเวลาของตนเองได้ ทีมแบ็คเอนด์เป็นเจ้าของกฎเกณฑ์อีคอมเมิร์ซ API คือเส้นแบ่งระหว่างทั้งสอง
ข้อแลกเปลี่ยนคือคุณต้องทำงานมากขึ้น แพลตฟอร์มแบบดั้งเดิมมอบร้านค้าที่ใช้งานได้ทันทีให้คุณ การเปลี่ยนไปใช้ Headless หมายความว่าคุณต้องสร้างและโฮสต์หน้าร้านค้าด้วยตนเอง ดังนั้นความยืดหยุ่นจึงมาพร้อมกับต้นทุนทางวิศวกรรม ทีมต่างๆ เลือก Headless เมื่อธีมมาตรฐานไม่สามารถมอบประสบการณ์ที่ต้องการได้ หรือเมื่อต้องการให้บริการหลายช่องทางจากแบ็คเอนด์เดียว
Headless vs. Composable vs. MACH
คำสามคำนี้มักถูกใช้สลับกัน แต่พวกมันอธิบายขอบเขตที่แตกต่างกัน นี่คือคำอธิบายอย่างตรงไปตรงมา
| คำศัพท์ | สิ่งที่อธิบาย | ขอบเขต |
|---|---|---|
| Headless commerce | ฟรอนต์เอนด์ที่แยกออกจากแบ็คเอนด์อีคอมเมิร์ซเดียว เชื่อมต่อกันด้วย API | หนึ่งแบ็คเอนด์, หนึ่งหรือหลายฟรอนต์เอนด์ |
| Composable commerce | สแตกทั้งหมดที่ถูกแยกออกเป็นบริการแบบ 'best-of-breed' ที่สามารถสับเปลี่ยนได้ (แค็ตตาล็อก, การค้นหา, การชำระเงิน, PIM, OMS) | บริการอิสระหลายตัวที่ถูกนำมารวมกัน |
| MACH | ชุดของหลักการทางสถาปัตยกรรมที่สแตกแบบ Composable มักจะปฏิบัติตาม | ปรัชญา ไม่ใช่ผลิตภัณฑ์ |
Headless เป็นกรณีที่แคบ คุณสามารถเป็น headless ได้ด้วยแบ็คเอนด์แบบโมโนลิธิคเดียว ตราบใดที่หน้าร้านค้าสื่อสารกับมันผ่าน API
Composable commerce ก้าวไปไกลกว่านั้น แทนที่จะเป็นแบ็คเอนด์เดียว คุณจะรวบรวมบริการอิสระและเลือกเครื่องมือที่ดีที่สุดสำหรับแต่ละงาน การค้นหาจากผู้จำหน่ายรายหนึ่ง การชำระเงินจากอีกรายหนึ่ง ตัวจัดการข้อมูลผลิตภัณฑ์แยกต่างหาก แต่ละบริการมี API ของตนเอง และคุณนำมารวมกันเพื่อสร้างประสบการณ์เดียว
MACH คือชุดหลักการที่อยู่เบื้องหลังสแตกแบบ Composable ส่วนใหญ่ ตามที่ MACH Alliance ซึ่งเป็นกลุ่มอุตสาหกรรมที่ก่อตั้งในปี 2020 ระบุว่า MACH ย่อมาจาก Microservices, API-first, Cloud-native SaaS และ Headless สังเกตว่า API-first อยู่ตรงกลาง ในโลกของ MACH นั้น API ไม่ใช่คุณสมบัติเสริม แต่เป็นวิธีเดียวที่ส่วนประกอบต่างๆ สื่อสารกัน ซึ่งเป็นเหตุผลเดียวกันกับแนวคิดที่ว่าคุณควรถือว่า API ของคุณเป็นผลิตภัณฑ์
API ของ Headless Commerce เปิดเผยอะไรบ้าง
รูปแบบที่แน่นอนแตกต่างกันไปตามแพลตฟอร์ม แต่ API ของ headless commerce ส่วนใหญ่ครอบคลุมงานหลักเดียวกัน:
- แค็ตตาล็อกและผลิตภัณฑ์ อ่านผลิตภัณฑ์, ตัวเลือก, คอลเลกชัน และสื่อ เพื่อให้หน้าร้านค้าสามารถแสดงรายการและหน้ารายละเอียดได้
- ค้นหาและเรียกดู สอบถาม, กรอง และจัดเรียงแค็ตตาล็อก
- รถเข็นและการชำระเงิน สร้างรถเข็น, เพิ่มและลบสินค้าในรายการ, ใช้ส่วนลด และดำเนินการชำระเงิน
- ลูกค้า เข้าสู่ระบบ, จัดการบัญชี และติดตามประวัติการสั่งซื้อ
- สินค้าคงคลังและราคา แสดงระดับสต็อกและราคาที่ถูกต้องสำหรับบริบทที่เหมาะสม
บางแพลตฟอร์มแยกสิ่งเหล่านี้ออกเป็น API หน้าร้านค้าที่เปิดเผยต่อสาธารณะ และ API ผู้ดูแลระบบแยกต่างหากสำหรับการทำงานหลังบ้าน API หน้าร้านค้าเน้นการอ่านและมีลูกค้าเป็นผู้ใช้งาน ส่วน API ผู้ดูแลระบบจัดการการแก้ไขแค็ตตาล็อก การจัดการคำสั่งซื้อ และการกำหนดค่า
โปรโตคอลก็มีความสำคัญเช่นกัน API ของ headless commerce จำนวนมากเป็น GraphQL ซึ่งช่วยให้หน้าร้านค้าสามารถขอฟิลด์ที่ต้องการได้อย่างแม่นยำในการเดินทางไปกลับครั้งเดียว ส่วนอื่นๆ เป็น REST และบางแพลตฟอร์มมีทั้งสองแบบ หากคุณกำลังพิจารณาข้อดีข้อเสีย โปรดดูที่ REST vs GraphQL
แพลตฟอร์มหลัก
พื้นที่ของ Headless Commerce แบ่งออกเป็นเอนจิ้น SaaS และเอนจิ้นโอเพ่นซอร์สโดยประมาณ นี่คือชื่อบางส่วนที่คุณจะพบ:
- commercetools สมาชิกผู้ก่อตั้ง MACH Alliance และหนึ่งในแพลตฟอร์ม Composable Commerce ที่ถูกอ้างถึงบ่อยที่สุด ออกแบบมาเป็น API-first และ cloud-native
- Shopify มีการสร้างแบบ Headless ผ่าน Storefront API โดยมี Hydrogen เป็นเฟรมเวิร์ก React สำหรับการใช้งาน หากคุณอยู่ในโลกของ Shopify อยู่แล้ว บทช่วยสอน Shopify API ของเราเป็นจุดเริ่มต้นที่ดี
- BigCommerce รองรับโหมด Headless ด้วย GraphQL Storefront และ Checkout API นอกเหนือจากแค็ตตาล็อกของมัน ดูคู่มือของเราสำหรับการ ใช้ BigCommerce APIs
- Saleor เอนจิ้นโอเพ่นซอร์สแบบ GraphQL-first ที่สร้างขึ้นบน Python และ Django
- Medusa เอนจิ้นโอเพ่นซอร์สที่สร้างขึ้นบน Node.js และ TypeScript เป็นที่นิยมในหมู่ทีม JavaScript ที่ต้องการควบคุมแบ็คเอนด์ได้อย่างเต็มที่
ตรวจสอบรายละเอียดเฉพาะของแพลตฟอร์มก่อนตัดสินใจ เนื่องจากราคา รูปแบบการโฮสต์ และความครอบคลุมของ API อาจเปลี่ยนแปลงได้ รูปแบบที่พบในทุกแพลตฟอร์มนั้นเหมือนกัน: เอนจิ้นเปิดเผยตรรกะอีคอมเมิร์ซผ่าน API และคุณสร้างส่วนหัว (head) ขึ้นมาเอง
ทำไมทีมต่างๆ จึงต้องพึ่งพาสัญญา API ของอีคอมเมิร์ซ
เมื่อหน้าร้านค้าถูกแยกออกไป API ก็หยุดเป็นเพียงส่วนประกอบภายในและกลายเป็นข้อตกลงที่ทุกคนใช้ในการสร้าง นี่คือจุดที่ Headless เป็นจริงขึ้นมา
ทีมฟรอนต์เอนด์ของคุณไม่สามารถสร้างหน้าสินค้าได้จนกว่าจะรู้รูปแบบที่แน่นอนของการตอบกลับข้อมูลสินค้า การผสานรวมกับพาร์ทเนอร์ของคุณ แอปความภักดี บริการภาษี ฟีดตลาดกลาง ทั้งหมดนี้เชื่อมต่อกับเอนด์พอยต์เดียวกัน ทีมโมบายล์ก็ใช้สัญญาเดียวกันกับทีมเว็บ หากรูปแบบการตอบกลับเปลี่ยนแปลงไปโดยไม่มีการแจ้งเตือน ผู้บริโภคเหล่านั้นอาจพังได้พร้อมกันทั้งหมด
นั่นคือความเสี่ยงและโอกาส สัญญา API ของอีคอมเมิร์ซที่ชัดเจน เสถียร และมีเอกสารประกอบที่ดี ช่วยให้ทีมอิสระทำงานได้รวดเร็วโดยไม่ทับซ้อนกัน สัญญาที่คลุมเครือหรือไม่คงที่ทำให้ทุกการเผยแพร่กลายเป็นการประสานงานที่วุ่นวาย สัญญาคือผลิตภัณฑ์ ดังนั้นจึงสมควรได้รับการดูแลเช่นเดียวกับหน้าร้านค้าเอง รวมถึงการ ทดสอบสัญญา เพื่อตรวจจับการเปลี่ยนแปลงที่ทำให้เกิดข้อผิดพลาดก่อนที่จะเผยแพร่
การกำหนดเวอร์ชันก็เป็นส่วนหนึ่งของข้อตกลงด้วย เมื่อคุณต้องการเปลี่ยนการตอบกลับของผลิตภัณฑ์หรือเปลี่ยนชื่อฟิลด์ คุณไม่สามารถแก้ไขเอนด์พอยต์แล้วหวังว่าทุกอย่างจะเรียบร้อยได้ ผู้ใช้งานที่คุณไม่ได้ควบคุมกำลังอ่านมันอยู่ ดังนั้นทีม Headless จึงถือว่าสัญญาเป็นพันธะสาธารณะ: การเปลี่ยนแปลงที่เพิ่มเข้ามาเมื่อเป็นไปได้ ช่วงเวลาการเลิกใช้งานที่ชัดเจน และการทดสอบที่ระบุสิ่งใดก็ตามที่ทำให้เกิดข้อผิดพลาดก่อนที่จะไปถึงการผสานรวมของพาร์ทเนอร์
Apidog เข้ามามีบทบาทที่ไหน
Apidog ไม่ได้บริหารจัดการร้านค้าของคุณ ไม่ใช่เอนจิ้นอีคอมเมิร์ซ, CMS หรือเกตเวย์ และไม่ได้ทำให้สแตกของคุณเป็นแบบ Headless หรือ Composable สิ่งที่ทำคือเป็นเจ้าของหลักการ API-first ทั้งหมดนี้: เลเยอร์ที่คุณออกแบบ ทดสอบ สร้างจำลอง (mock) และจัดทำเอกสารสัญญาที่สิ่งอื่น ๆ ต้องพึ่งพา

สิ่งนี้เชื่อมโยงกับการทำงานของ Headless Commerce ได้อย่างชัดเจน:
- ออกแบบสัญญาเป็นอันดับแรก สร้างแบบจำลอง API ของหน้าร้านค้าหรือผู้ดูแลระบบในรูปแบบ OpenAPI spec ใน Apidog ก่อนที่จะมีโค้ด เพื่อให้ฟรอนต์เอนด์และแบ็คเอนด์ตกลงกันในรูปแบบตั้งแต่แรก
- สร้างจำลองก่อนที่แบ็คเอนด์จะพร้อม สร้างเซิร์ฟเวอร์จำลองจาก spec เพื่อให้ทีมหน้าร้านค้าสร้างและทดสอบกับข้อมูลสินค้าและรถเข็นที่สมจริง ในขณะที่เอนจิ้นอีคอมเมิร์ซยังคงอยู่ในระหว่างการเชื่อมต่อ นั่นคือคำมั่นสัญญาของการแยกส่วนที่นำมาใช้ได้จริง และคุณสามารถอ่านเพิ่มเติมได้ใน คำอธิบาย Mock API ของเรา
- ทดสอบสัญญาใน CI Apidog CLI รันการทดสอบ API ของคุณโดยไม่มี GUI การดำเนินการทดสอบแบบ Headless ที่เหมาะกับ Pipeline นี่คือแนวคิดที่สอดคล้องกับ Headless Commerce อย่างแท้จริง: ไม่จำเป็นต้องมีฟรอนต์เอนด์ เพียงแค่การตรวจสอบสัญญาเท่านั้น
- จัดทำเอกสารสำหรับพาร์ทเนอร์ เอกสารที่สร้างขึ้นโดยอัตโนมัติและโต้ตอบได้ ให้ทีมหน้าร้านค้าและพาร์ทเนอร์มีแหล่งข้อมูลเดียวที่เป็นจริงสำหรับ API ที่พวกเขากำลังผสานรวม
สำหรับข้อมูลเชิงลึกเพิ่มเติมว่าทำไมสิ่งนี้จึงสำคัญเมื่อ API กลายเป็นอินเทอร์เฟซเดียว โปรดดูที่ ซอฟต์แวร์กำลังเปลี่ยนไปสู่ headless และ API ของคุณคือผลิตภัณฑ์แล้ว หากคุณต้องการลองใช้งานเวิร์กโฟลว์ ดาวน์โหลด Apidog และนำเข้า spec ที่มีอยู่
คำถามที่พบบ่อย
Headless commerce เหมือนกับ Composable commerce หรือไม่?
ไม่ Headless commerce แยกส่วนหน้าร้านค้าออกจากแบ็คเอนด์อีคอมเมิร์ซหนึ่งเดียวผ่าน API ส่วน Composable commerce ก้าวไปไกลกว่านั้น โดยการรวบรวมบริการ "best-of-breed" อิสระจำนวนมาก ซึ่งแต่ละบริการมี API ของตัวเอง มารวมกันเป็นประสบการณ์เดียว ทุกสแตกแบบ Composable เป็น Headless แต่การตั้งค่าแบบ Headless ที่มีแบ็คเอนด์แบบโมโนลิธิคเดียวไม่จำเป็นต้องเป็น Composable เสมอไป
ฉันจำเป็นต้องใช้ GraphQL สำหรับ API ของ headless commerce หรือไม่?
ไม่จำเป็น GraphQL เป็นที่นิยมเพราะช่วยให้หน้าร้านค้าสามารถร้องขอฟิลด์ที่ต้องการได้อย่างแม่นยำในการเรียกครั้งเดียว ซึ่งเหมาะกับการแสดงผลสินค้าและตะกร้าสินค้าได้ดี แต่ API ของ headless commerce จำนวนมากใช้ REST และบางแพลตฟอร์มก็มีทั้งสองแบบ โปรโตคอลมีความสำคัญน้อยกว่าสัญญาที่มีความเสถียรและมีเอกสารประกอบ
ฉันสามารถทดสอบ API ของ headless commerce ก่อนที่แบ็คเอนด์จะถูกสร้างได้หรือไม่?
ได้ และนั่นคือหนึ่งในเหตุผลหลักที่ควรเริ่มจากการออกแบบก่อน หากคุณสร้างแบบจำลองสัญญา API เป็น spec คุณสามารถสร้าง mock server ที่ให้การตอบสนองที่สมจริง ทีมหน้าร้านค้าของคุณจะสร้างและทดสอบกับ mock server ในขณะที่เอนจิ้นอีคอมเมิร์ซยังอยู่ระหว่างการพัฒนา จากนั้นจึงเปลี่ยนไปใช้เอนด์พอยต์จริงในภายหลัง
MACH Alliance คืออะไร?
MACH Alliance คือกลุ่มอุตสาหกรรมที่ก่อตั้งขึ้นในปี 2020 เพื่อส่งเสริมสแตกเทคโนโลยีแบบเปิดและแบบ best-of-breed ที่สร้างขึ้นบนหลักการ Microservices, API-first, Cloud-native SaaS และ Headless ผู้จำหน่ายอย่าง commercetools เป็นสมาชิกผู้ก่อตั้ง MACH เป็นชุดของหลักการทางสถาปัตยกรรม ไม่ใช่ผลิตภัณฑ์เดียวที่คุณซื้อ
สัญญาคือร้านค้า
Headless commerce ย้ายมูลค่าจากธีมไปยัง API เมื่อหน้าร้านค้าถูกแยกออก API ของอีคอมเมิร์ซคือสิ่งที่ทีมฟรอนต์เอนด์, โมบายล์ และพาร์ทเนอร์ของคุณใช้ในการสร้าง Composable commerce และ MACH ผลักดันสิ่งนี้ให้ก้าวหน้ายิ่งขึ้นโดยทำให้ API-first เป็นหลักการหลักมากกว่าคุณสมบัติเสริม
ทั้งหมดนั้นไม่ได้ขึ้นอยู่กับ Apidog แต่คุณภาพของสัญญาได้รับประโยชน์จากพื้นที่ในการออกแบบ จำลอง ทดสอบ และจัดทำเอกสาร หากโครงการ Headless ของคุณมุ่งไปในทิศทางนั้น Apidog จะมอบเลเยอร์นั้นให้คุณโดยไม่แสร้งทำเป็นเอนจิ้นอีคอมเมิร์ซที่อยู่เบื้องหลัง
