การแมปข้อมูลสินค้า Smaregi กับข้อมูลสินค้าของ Receipt Roller

สมาเรจิ สินค้า การเชื่อมต่อ POS การแมปข้อมูล

ข้อมูลหลักสินค้าของ Smaregi จะถูกแปลงเป็น ข้อมูลสินค้าของ Receipt Roller (ProductDto) โดยอัตโนมัติหลังจากเชื่อมต่อกับเครื่อง POS แล้ว บทความนี้สรุปความสัมพันธ์ของแต่ละฟิลด์ และข้อควรระวังเฉพาะของ Smaregi

วิธีการซิงค์ข้อมูลด้วยตนเอง ให้คลิกปุ่ม "ซิงค์จาก Smaregi" ในหน้าจัดการสินค้า รายละเอียดเพิ่มเติมดูได้ที่ การตั้งค่าเชื่อมต่อ POS ของ Smaregi

ตารางเทียบฟิลด์

Smaregi /pos/products Receipt Roller (ProductDto) หมายเหตุ
productIdSmaregiProductIdID ภายในของ Smaregi ใช้เป็นคีย์อ้างอิงเมื่อซิงค์ซ้ำ
productCodeSKUรหัสสินค้าของ Smaregi(หมายเลขที่ผู้ประกอบการร้านค้าใช้งานทั่วไป)
productNameProductNameชื่อสินค้า(สูงสุด 85 ตัวอักษร)
descriptionDescriptionคำอธิบายสินค้า(หากเป็นค่าว่างจะไม่อัปเดต)
categoryIdCategoryระบุค่า categoryName จาก /pos/categories แล้วบันทึก
priceBasePriceแปลงเป็นชนิด decimal เมื่อซิงค์ซ้ำจะเขียนทับเฉพาะกรณีที่มีค่ามากกว่า 0
costBaseCostPriceแปลงเป็นชนิด decimal หากเป็นค่าว่างหรือ 0 ระบบจะคงค่าเดิมที่มีอยู่ในฝั่ง RR ไว้
displayFlag—(ตัวกรอง)สินค้าที่มีค่า "0"(ไม่แสดงที่เครื่อง)จะไม่ถูกซิงค์

รายการที่ไม่ถูกนำเข้า

ฟิลด์ต่อไปนี้ของ Smaregi ในเวอร์ชันปัจจุบันยังไม่ถูกนำเข้าในฝั่ง RR

  • อัตราภาษีtaxRate)— /pos/products ของ Smaregi ไม่ส่งคืนอัตราภาษี สิ่งที่ส่งคืนมามีเพียงค่าหมวดหมู่ของประเภทภาษี taxDivision(0=รวมภาษี, 1=ไม่รวมภาษี, 2=ไม่ต้องเสียภาษี)เท่านั้น เนื่องจากอัตราภาษีจริงถูกกำหนดในการตั้งค่าผู้เช่าของ Smaregi ฝั่ง RR จึงตั้งค่าเริ่มต้นเป็น 10% เมื่อลงทะเบียนใหม่ และคงอัตราภาษีเดิมไว้เมื่ออัปเดต
  • รหัส JAN — endpoint /pos/products ของ Smaregi ไม่มีฟิลด์รหัส JAN กรุณาลงทะเบียนแยกต่างหากในฝั่ง RR
  • แบรนด์ / ผู้จัดจำหน่าย / หมายเลขรุ่น / ซีรีส์ ฯลฯ — เนื่องจากไม่มีแนวคิดที่ตรงกันในฟิลด์มาตรฐานของ Smaregi กรุณาลงทะเบียนแยกต่างหากในฝั่ง RR
  • รูปภาพสินค้า — การซิงค์รูปภาพจากฝั่ง Smaregi ยังไม่รองรับในเวอร์ชันปัจจุบัน
  • ตัวเลือกสินค้า(variation)(สินค้าแยกตามสี/ขนาด)— โครงสร้างสินค้าแบบแม่-ลูกของฝั่ง Smaregi ยังไม่ถูกขยายเป็นสินค้าแยกรายการในเวอร์ชันปัจจุบัน
  • ราคาตามสาขา — หากตั้งค่าราคาต่างกันตามสาขาใน Smaregi เวอร์ชันปัจจุบันจะนำเข้าเฉพาะราคาพื้นฐานของทั้งสัญญาเท่านั้น สามารถเขียนทับได้ในฝั่ง RR โดยใช้ StorePricesJson
  • ฟิลด์เฉพาะของ RRBrand / Supplier / JanCode / ModelNumber / TaxRate ฯลฯ)— ฟิลด์ที่ไม่มีแนวคิดตรงกันในฝั่ง Smaregi หรือไม่ได้ซิงค์ จะไม่ถูกเขียนทับเมื่อซิงค์ซ้ำ เนื้อหาที่ลงทะเบียนด้วยตนเองในฝั่ง RR จะยังคงอยู่

การจับคู่ข้อมูลและการลงทะเบียนใหม่

เมื่อนำเข้าสินค้าจาก Smaregi ระบบจะจับคู่กับสินค้าที่มีอยู่แล้วโดยใช้ SmaregiProductId ที่ตรงกันทั้งหมดเท่านั้น หากไม่ตรงกัน จะถูกเพิ่มเข้า PIM เป็นสินค้าใหม่ ระบบจะไม่จับคู่อัตโนมัติด้วยชื่อสินค้าหรือ SKU(เนื่องจากอาจมีสินค้าต่างกันที่ใช้ชื่อเดียวกันได้)

จังหวะเวลาในการซิงค์

  • Smaregi → RR(การนำเข้าข้อมูลหลักสินค้า): ทำงานแบบแมนนวลผ่านปุ่ม "ซิงค์จาก Smaregi" ในหน้าจัดการสินค้า ระบบจะดึงรายการสินค้าและหมวดหมู่ทั้งหมดจาก Smaregi Platform API(/pos/products + /pos/categories)และจับคู่ด้วย SmaregiProductId เพื่อเพิ่มหรืออัปเดตข้อมูล
  • พฤติกรรมเมื่อซิงค์ซ้ำ: สินค้าที่มีอยู่แล้ว(ที่มี SmaregiProductId ตรงกัน)จะถูกเขียนทับในฟิลด์ ProductName / Description / SKU / Category / BasePrice / BaseCostPrice(เฉพาะกรณีที่มีค่า)ส่วนฟิลด์ที่เพิ่มในฝั่ง RR เช่น Brand / Supplier / JanCode / TaxRate จะยังคงอยู่ไม่ถูกเขียนทับ
  • RR → Smaregi: ยังไม่รองรับในเวอร์ชันปัจจุบัน สินค้าที่ลงทะเบียนในฝั่ง RR จะไม่ถูกส่งกลับไปยัง Smaregi โดยอัตโนมัติ

ข้อควรระวัง

  • หากมีการลบสินค้าออกจริงในฝั่ง Smaregi การจับคู่ด้วย SmaregiProductId ของสินค้านั้นจะใช้งานไม่ได้อีกต่อไป แนะนำให้ใช้การซ่อนด้วย displayFlag แทนการลบจริงในฝั่ง Smaregi(สินค้าที่ถูกซ่อนจะไม่อยู่ในขอบเขตการซิงค์ แต่การเชื่อมโยงกับรายการขายในอดีตจะยังคงอยู่)
  • ต้นทุน(cost)เป็นรายการที่กรอกได้ตามต้องการแม้ในฝั่ง Smaregi หากยังไม่ได้กรอกต้นทุนในฝั่ง Smaregi จำเป็นต้องกรอก BaseCostPrice ด้วยตนเองในฝั่ง RR เพื่อให้สามารถใช้การวิเคราะห์กำไรได้ กรุณาพิจารณาจัดเตรียมข้อมูลต้นทุนให้ครบถ้วน
  • หากมีสินค้าที่มีอัตราภาษีนอกเหนือจาก 10%(เช่น อัตราภาษีลดหย่อน 8%)ปะปนอยู่ กรุณาเปลี่ยน TaxRate เป็น 0.08 ด้วยตนเองในฝั่ง RR หลังการซิงค์ เนื่องจากฝั่ง Smaregi ไม่ส่งอัตราภาษีมา จึงไม่มีการตั้งค่าอัตโนมัติ
  • การซิงค์ครั้งแรกของสินค้าจำนวนมากอาจใช้เวลานานเนื่องจากข้อจำกัดอัตราการเรียกใช้ (rate limit) ของ API สินค้าที่เกินจำนวนสูงสุดตามแพ็กเกจจะถูกข้าม

ข้อมูลสินค้าผ่านรายการขาย

แม้จะไม่ได้ทำการซิงค์ข้อมูลหลักสินค้า ทุกครั้งที่มีรายการขายเกิดขึ้น ฟิลด์ productCode / productName / categoryName ของ SmaregiTransactionDetail จะถูกนำเข้าเป็นรายละเอียดการขาย ข้อมูลเหล่านี้จะถูกบันทึกเป็นสแนปช็อต ณ เวลาที่เกิดรายการขาย และทำหน้าที่เป็นข้อมูลพื้นฐานสำหรับการแสดงผลใบเสร็จและการรวมยอดขายแยกตามสินค้า รายละเอียดเพิ่มเติมดูได้ที่ การแมปข้อมูลการขายของ Smaregi

คู่มือที่เกี่ยวข้อง

เผยแพร่เมื่อ: 2569-05-29 อัปเดตเมื่อ: 2569-07-03
บทความที่เกี่ยวข้อง