วิธีลงทะเบียน Webhook
อธิบายขั้นตอนการลงทะเบียน Webhook endpoint ในพอร์ทัลนักพัฒนาของ ReceiptRoller วิธีเลือกอีเวนต์ที่ต้องการสมัครรับ การส่งทดสอบ การแบ่งใช้หลาย endpoint และวิธีลบหรือปิดใช้งานชั่วคราว
ภาพรวมของ Webhook
อธิบายชนิดอีเวนต์หลักที่ Webhook ของ ReceiptRoller ส่งมา เหตุผลที่ควรใช้ Webhook แทน polling รูปแบบการส่ง (HTTPS POST + JSON) และแนวคิดเรื่องการรับประกันการส่ง
SNS Webhook Bypass(การส่งต่อ Webhook ของ SNS ภายนอกอย่าง LINE)
อธิบายกลไก, วิธีตั้งค่า, การจัดการลายเซ็น และข้อควรระวัง ของฟีเจอร์ "SNS Webhook Bypass" ที่ ReceiptRoller ส่งต่อ Webhook ที่รับมาจากแพลตฟอร์ม SNS อย่าง LINE ไปยังแอปของนักพัฒนา ภายใต้ความยินยอมของฝั่งร้านค้า
การมอนิเตอร์และการจัดการเมื่อล้มเหลว
อธิบายวิธีดูประวัติการส่ง Webhook ของ ReceiptRoller, ตัวชี้วัดที่ควรมอนิเตอร์และการออกแบบอะเลิร์ต, การส่ง dead letter ซ้ำ, รูปแบบเหตุขัดข้องที่พบบ่อยและขั้นตอนการกู้คืน
Webhook ไม่มาถึง
การแยกแยะสาเหตุเมื่อ Webhook ไม่มาถึง endpoint ผู้รับ อธิบายขั้นตอนการตรวจสอบตามลำดับ ทั้งการตั้งค่า endpoint การสมัครรับ event ความสามารถในการเข้าถึง ความล้มเหลวในการตรวจสอบลายเซ็น และไฟร์วอลล์
สำหรับร้านค้า: คู่มือออกใบเสร็จดิจิทัลในแอปของตนเองและแจ้งเตือนผ่าน Webhook
อธิบายขั้นตอนตั้งแต่การให้ร้านค้า/แบรนด์ออกใบเสร็จดิจิทัลให้ลูกค้าในแอปของตนเอง จนถึงการรับการแจ้งเตือนแบบเรียลไทม์ผ่าน Webhook ครอบคลุมการลงทะเบียนแอป OAuth การตั้งค่า Webhook และการตรวจสอบลายเซ็น
การออกแบบการส่งซ้ำ・ลำดับ・idempotency
อธิบายนโยบายการส่งซ้ำของ Webhook ของ ReceiptRoller, เหตุผลที่ไม่รับประกันลำดับการส่ง, การอิมพลิเมนต์ idempotency ด้วย event_id, การจัดการ dead letter และแอนตี้แพตเทิร์นที่พบบ่อย
การตรวจสอบลายเซ็นและความปลอดภัย
อธิบายกลไกการตรวจสอบลายเซ็น HMAC-SHA256 ของ Webhook ใน ReceiptRoller ตัวอย่างโค้ดตรวจสอบ (Node.js / Python / C#) มาตรการป้องกัน replay attack และวิธีจัดการ secret อย่างปลอดภัย
สิ่งที่ทำได้ด้วยพอร์ทัลนักพัฒนา
ภาพรวมของสิ่งที่ทำได้ด้วยพอร์ทัลนักพัฒนาของ ReceiptRoller ผสมผสานการดึงและจัดการข้อมูลผ่าน REST API กับการรับอีเวนต์แบบเรียลไทม์ผ่าน Webhook เพื่อเชื่อมต่อข้อมูลร้านค้าและผู้ใช้จากระบบภายนอก
การเชื่อมต่อข้อมูลสต็อกสินค้า
อธิบายโครงสร้างข้อมูลสต็อกของ ReceiptRoller การจัดการหลายคลังสินค้า ประวัติการรับ-จ่ายสินค้า การซิงค์แบบเรียลไทม์ด้วย Webhook และรูปแบบการเชื่อมต่อกับ WMS
การหมุนเวียนซีเคร็ตและการจัดเก็บอย่างปลอดภัย
อธิบายแผนการหมุนเวียน (rotation) เพื่อใช้งานไคลเอนต์ซีเคร็ตและ Webhook ซีเคร็ตของ ReceiptRoller อย่างปลอดภัย, วิธีใช้ช่วงคู่ขนานระหว่างซีเคร็ตเก่ากับใหม่ และแนวปฏิบัติที่ดีในการจัดเก็บ
สำหรับแอปวอลเล็ต: คู่มือดึงใบเสร็จของผู้ใช้ผ่าน OAuth
อธิบายวิธีดึงใบเสร็จการซื้อของ Receipt Roller โดยได้รับความยินยอมจากผู้ใช้ ผ่านแอปแบบวอลเล็ต เช่น iOS, Android และ LINE Mini App ครอบคลุมการยืนยันตัวตน OAuth 2.0 การใช้ Receipt API และการเชื่อมต่อ Webhook
สารบัญความช่วยเหลือสำหรับนักพัฒนา
สารบัญความช่วยเหลือสำหรับนักพัฒนา ReceiptRoller รวบรวมตั้งแต่การสมัครเป็นนักพัฒนา การลงทะเบียนแอปพลิเคชัน การยืนยันตัวตน OAuth และสโคป คู่มือการพัฒนา (แอปวอลเล็ต, Webhook สำหรับร้านค้า, Survey API) คู่มือแยกตามโดเมนข้อมูล การใช้งานและความปลอดภัย คอมมูนิตี ไปจนถึงการแก้ปัญหา
ตัวอย่าง API ที่ใช้บ่อย
แนะนำตัวอย่างการเรียกเอนด์พอยต์ที่ใช้บ่อยของ API ReceiptRoller (ดึงใบเสร็จ・รายการร้าน・สร้างสินค้า・ลงทะเบียน Webhook) ด้วยคำสั่ง curl
การเชื่อมต่อข้อมูลการซื้อและใบเสร็จ
อธิบายโครงสร้างข้อมูลการซื้อและใบเสร็จที่ ReceiptRoller จัดการ วิธีการดึงข้อมูล สโคปที่เกี่ยวข้อง Webhook และกรณีการใช้งานที่พบบ่อย
ข้อมูลด้านต่าง ๆ ที่ใช้ได้
อธิบายข้อมูลด้านต่าง ๆ ที่ดึงได้จากพอร์ทัลนักพัฒนาของ ReceiptRoller เป็นรายการ รวบรวมเนื้อหาที่อยู่ในแต่ละด้าน วิธีดึง และ scope ที่จำเป็น ครอบคลุมการซื้อ・สินค้า・สินค้าคงคลัง・คำสั่งซื้อ・ลูกค้า・คูปอง・SNS・โฆษณา・ข้อมูลผู้ใช้ส่วนบุคคล ฯลฯ
การลงทะเบียนแอปพลิเคชันคืออะไร
อธิบายแนวคิดของการลงทะเบียนแอปพลิเคชันใน ReceiptRoller การลงทะเบียนแอปในฐานะ OAuth client จะทำให้ได้ client ID・secret・redirect URI และเริ่มการเชื่อมต่อ API・Webhook ได้
ข้อมูลหลักของสินค้า (PIM) และหมวดหมู่
อธิบายโครงสร้างข้อมูลหลักของสินค้า (PIM) หมวดหมู่ และวาเรียนต์ของ ReceiptRoller การดำเนินการแบบ CRUD การจัดการ SKU และรูปแบบการซิงค์กับ EC
SLA อัตราการทำงาน และขั้นตอนตรวจสอบเมื่อเกิดเหตุขัดข้อง
อธิบายเป้าหมายอัตราการทำงานของ ReceiptRoller API วิธีตรวจสอบหน้าสถานะ ขั้นตอนการแยกแยะสาเหตุเมื่อเกิดเหตุขัดข้อง และขั้นตอนการยกระดับสู่ฝ่ายสนับสนุน
โพสต์คำถามในคอมมูนิตี
อธิบายขั้นตอนการโพสต์คำถามในคอมมูนิตีนักพัฒนา รวมถึงกระบวนการอนุมัติหลังโพสต์และโฟลว์อีเมลแจ้งเตือน