員工管理 API(Staff API)的使用方式
這是使用 ReceiptRoller 員工管理 API(/api/v1/staff)對商業帳戶底下的員工(Staff)進行 CRUD 操作的指南。支援與 Square Team Member 互通的欄位(假名、多工作分配、薪資結構)。
商品管理 API(Products API)的使用方式
這是使用 ReceiptRoller 商品管理 API(/api/v1/products)對商業帳戶底下的商品進行 CRUD 操作的指南。適用於在 Android/iOS 應用程式或伺服器串接讀寫 PIM(商品主檔)時的入門文章。
資料保護(匿名化、加密)的思維
解說 ReceiptRoller 串接應用程式的資料保護思維、加密(保管時、通信時)、匿名化、假名化的技巧,以及刪除政策。
User 系權限範圍的審查申請
解說在 ReceiptRoller 處理一般消費者資料(user.* 權限範圍)的應用程式所需的審查申請流程、提交文件、審查基準、審查期間、常見退件理由。
無法取得權杖(驗證錯誤)
無法取得存取權杖時的原因釐清。解說 invalid_client、invalid_grant、redirect_uri_mismatch 等代表性錯誤與因應。
Webhook 的概要
解說 ReceiptRoller 的 Webhook 所投放的主要事件種類、應該使用 Webhook 而非輪詢的理由、投放形式(HTTPS POST + JSON)、投放保證的思考方式。
簽章驗證與安全性
解說 ReceiptRoller Webhook 的 HMAC-SHA256 簽章驗證的機制、驗證程式碼的範例(Node.js / Python / C#)、重放攻擊對策、密鑰的安全管理方法。
密鑰的輪替與安全的保管
解說為安全運用 ReceiptRoller 的用戶端密鑰、Webhook 密鑰的輪替計畫、新舊並行期間的使用方式、保管的最佳實務。
商店應用程式 內容 API(公告、頁面、營業資訊)的使用方式
說明用於取得商店應用程式內容(公告、頁面、應用程式資訊清單、營業資訊、會員卡設定)的 /api/v1/apps/{shopId}/* 使用方式。解說 shopId 與商業帳戶 ID 相同、商業帳戶層級內容與店鋪層級內容的差異,以及驗證的處理方式。
銷售管理 API(Orders / OMS API)的使用方式
這是使用 ReceiptRoller 銷售管理 API(/api/v1/orders)對商業帳戶底下的訂單進行 CRUD 操作的指南。彙整訂單的建立、更新、狀態轉移(確認、處理中、取消)、刪除,以及適用於 Android/iOS 應用程式或伺服器串接的流程。
重送、順序、冪等性的設計
解說 ReceiptRoller Webhook 的重送政策、投放順序不保證的理由、使用 event_id 的冪等性實作、無效信件的處理、常見反模式。
PosTransactionDto 規格 — 交易資料的欄位參考
解說 ReceiptRoller 處理的交易資料正規模型 PosTransactionDto 的所有欄位。依識別碼、日期時間、金額、明細、付款、員工、狀態、CRM 串接各類別,彙整欄位名稱、型別、意義,以及各 POS 供應商的填入方式,是給開發者與外部系統串接負責人的參考。Smaregi、Square 雙方的對應文章也會參照本文。
回傳 403/401(權限、權限範圍)
API 呼叫回傳 401 或 403 時的原因釐清。解說權杖無效、權限範圍不足、無店鋪存取權、User 系審查未通過等典型情況。