第三方POS整合訂單說明
Overview
適用第三方POS系統服務,全通路平台將訂單推送接單,POS取消訂單、接單程式與第三方POS中間庫說明。
Order Workflow
%%{init: {'securityLevel': 'loose', 'theme':'base'}}%%
sequenceDiagram
participant W as 接單程式
participant D as POS DataBase
participant P as POS
W->>D: 1.建立weborder 訂單相關資訊
activate D
D->>W: 2.回傳成功
deactivate D
P->>D: 1.讀取weborder 訂單相關資訊
activate D
D->>P: 2.回傳訂單相關資訊
deactivate D
Return Order Workflow
%%{init: {'securityLevel': 'loose', 'theme':'base'}}%%
sequenceDiagram
participant W as POS
participant D as 接單程式
participant P as 全通路
W->>D: 1.呼叫異動訂單狀態API (newProcessCommand)
activate D
D->>P: 2.呼叫全通路異動訂單狀態5
activate P
P-->>D: 3.回傳訊息
deactivate P
D-->>W: 4.回傳訊息
deactivate D
POS取消訂單改成5,且須呼叫 接單異動訂單狀態API ,如果此訂單是線上付款,全通路會進行退款作業
中間庫資料表說明
weborder00 訂單主檔
| 中文名稱 | 欄位名稱 | 說明 |
|---|---|---|
| 分店編號 | Shop_id | |
| 訂單單號 | worder_id | |
| 狀態 | status | [預設值:1] 1:未審核; 2:接單 ; 3:APP取消; 4:結案(POS已取餐結帳); 5:POS取消; 6:POS銷退; 訂單同步到POS時狀態為1,此後便不會在來異動訂單狀態 |
| 訂單類型 | source_type | [預設值:0] 0:訂餐(銷售匯單); 1:訂位+訂餐(拋訂位單); 2:預訂取餐(拋客訂) kiosk點餐 都是0 |
| 來源單號 | source_id | |
| 訂位日期 | Input_date | |
| 用餐日期 | Meal_date | |
| 備註 | memo | |
| 銷售方式 | Method_name | |
| 用餐姓名 | Rec_name | |
| 聯絡人電話 | Rec_tel | |
| 聯絡人手機 | Rec_mobile | |
| 異動日期 | mod_date | |
| 異動人員 | mod_user | |
| 傳輸標誌 | transfer_status | 0:待傳; 1:已傳出; 2:傳入; [預設值:0] 此欄位不使用 |
| 傳輸異動日 | last_update | [預設值:系統日期] 如有傳輸需求,有更動資料需同時更動此欄位為更動日期時間 |
| 訂單來源 | storefrom | APP、EC、KIOSK、Pi商城、LAJOIN、微信、wl-饿了么、 掃碼下單、UberEats、foodpanda、掃碼下單後結、ExternalPOS、 Cyberbiz、3SPOS、CustTick、TourTick、Retail |
| 單據總金額 | tot_sales | [預設值:0] |
| 銷售方式編號 | sale_method | |
| 付款方式 | payment_terms | 0:到店付款; 1:APP金流付款; [預設值:0] 1表示已經付款,付款細節紀錄於weborder02與weborder021中 |
| 兌換點數 | tot_point | [預設值:0] |
| 貴賓編號 | vip_id | |
| 外送地址 | rec_addr | |
| 貴賓群組編號 | vipgrp_id | |
| 桌號 | table_no | |
| 退款狀態 | Refund_Status | 1:未審核;2:已同意;3:已拒絕 [預設值:0] |
| 客戶統編 | cust_code | |
| 捐贈碼 | npoban | |
| 買方載具號碼 | buyer_number | |
| 買方載具類別 | buyer_type | 3J0002:手機載具; CQ0001:自然人憑證; 1K0001:悠遊卡; 1H0001:一卡通; |
| 尾數折讓 | tot_discharge | [預設值:0] |
| 訂購人電話 | cust_tel | |
| 訂購人姓名 | cust_name | |
| 發票號碼 | invo_no | |
| 取餐號碼 | takeno | |
| 索取發票 | requestinvoice | [預設值:0] |
webordre01 訂單明細檔
| 中文名稱 | 欄位名稱 | 說明 |
|---|---|---|
| 分店編號 | Shop_id | |
| 訂單單號 | worder_id | |
| 訂單序號 | worder_sno | |
| 商品編號 | prod_id | |
| 售價 | sale_price | [預設值:0] |
| 數量 | qty | [預設值:0] |
| 單項折價(負) | item_disc | [預設值:0] |
| 特賣編號 | prom_id | |
| 特賣明細編號 | prom_sno | |
| 單價類型 | price_type | 0:全價; 1:折扣; 2:折讓; 3:特賣; 4:每日時段特價; 5:招待; 6:總價贈送; 7:總價折扣; 8:兌換商品; 9:全數組合; A:抵用券贈送; B:抵用券折抵; C:抵用商品 D:紅配綠 E:類別組合 F:生日(來店)禮 G:單品組合套餐 H:限量; I:搭贈 [預設值:0] |
| 招待員編號 | free_emp | |
| 招待備註 | free_memo | |
| 套餐主項銷售明細編號 | comb_sale_sno | |
| 套餐子項編號 | comb_sno | |
| 套餐類型 | comb_type | 0:非套餐商品; 1:套餐主項商品; 2:套餐子項商品; [預設值:0] |
| 套餐子項數量 | comb_qty | [預設值:1] |
| 口味內容 | taste_memo | |
| 特殊要求 | request_memo | |
| 兌換點數 | redeem_point | |
| 票券券號起號 | Tk_bno | |
| 票券券號訖號 | Tk_eno | |
| 商品折扣方式 | dis_type | 0:使用折扣; 1:使用特價; |
| 商品折扣率/折扣價 | dis_number | |
| 套裝系列銷售明細編號 | pack_sale_sno | |
| 套裝系列編號 | pack_sno | |
| 套裝系列類型 | pack_type | 0:非套裝商品; 1:套裝商品; 2:套裝商品項; [預設值:0] |
| 套裝系列項數量 | pack_qty | [預設值:1] |
| 滿量特賣品類型 | prom_qty_type | 0:非滿量特賣品; 1:滿量特賣購買品; 2:滿量特賣贈品; 3:滿量固定總價; 4:滿量固定折價; 5:滿量折扣 [預設值:0] |
| 滿量特賣編號 | prom_qty_id | |
| 滿量特賣序號 | prom_qty_sno | |
| 成立的滿量折扣(抵)數量 | prom_qty_qty | [預設值:0] |
| 商品屬性 | proptype | 1:印二維碼商品; 2:入場券商品; 3:每日銷量控管; 4:台灣禮物卡商品; 5:折扣券; 6:折價券; 7:商品券; [預設值:0] |
| 尺寸主商品編號 | szfprod_id | |
| 總折讓攤提金額 | itemdisc_total |
weborder011 APP訂單菜品口味檔
| 中文名稱 | 欄位名稱 | 說明 |
|---|---|---|
| 店號 | shop_id | |
| 單據編號 | worder_id | |
| 明細編號 | worder_sno | |
| 流水序號 | item_sno | |
| 參與數量 | item_iqty | [預設值:0] |
| 參與原價金額 | item_iamt | [預設值:0] |
| 單項折價(負) | item_idisc | [預設值:0] |
| 單價類型 | item_ptype | 0:全價; 1:折扣; 2:折讓; 3:特賣; 4:每日時段特價; 5:招待; 6:總價贈送; 7:總價折扣; 8:兌換商品; 9:全數組合; A:抵用券贈送; B:抵用券折抵; C:抵用商品 D:紅配綠 E:類別組合 F:生日(來店)禮 G:單品組合套餐 H:限量; I:搭贈; J:標籤滿額 92:滿量贈送\折抵\折扣 91:單頭尾數折讓(此表格不記錄,拋鼎新TT時會對應到) |
| 折扣類型 | item_distype | 0:折扣; 1:折價 |
| 折扣率 | item_disnumber | 折扣率or折價金額 |
| 特賣編號 | item_promid | |
| 特賣明細編號 | item_promsno | |
| 特賣名稱 | item_promname | |
| 檔期編號 | item_schedid | |
| 檔期名稱 | item_schedname | |
| 特賣類型 | item_promtype | 依據item_ptype填入對應值 1🡪0:人工折扣; 1:會員折扣 7🡪0:大類; 1:類別;2:小類 9🡪0:贈送;1:折扣;2:折價;3:正常 D🡪1:紅標商品;2:綠標商品 E🡪A:促銷A類; B:促銷B類 G🡪0:贈送;1:折扣;2:折價;3:特價; 4:原價 J🡪0:標籤;1:商品 92🡪0:非滿量特賣品; 1:滿量特賣購買品; 2:滿量特賣贈品; 3:滿量固定總價; 4:滿量固定折價; 5:滿量折扣 |
weborder02 APP訂單資料付款檔
| 中文名稱 | 欄位名稱 | 說明 |
|---|---|---|
| 店號 | shop_id | |
| 銷售單據編號 | worder_id | |
| 付款方式 | pay_id | 付款方式 |
| 銷售金額 | amount | [預設值:0] |
| IC卡:刷卡前金額 悠遊卡/台灣禮物卡:扣款後餘額 | old_amount | [預設值:0] |
| 支付條碼 | relate_id | 支付寶&微信支付🡺支付條碼|付款流水 悠遊卡🡺悠遊卡號|扣款前餘額|自動加值金額|加值前餘額 台灣禮物卡🡺扣款前餘額 一卡通🡺一卡通卡號|扣款前餘額|自動加值金額|加值前餘額 |
| 付款方式已開發票 | isinv | [預設值:0] |
weborder021 APP訂單資料付款憑證檔
| 中文名稱 | 欄位名稱 | 說明 |
|---|---|---|
| 店號 | shop_id | |
| 銷售單據編號 | worder_id | |
| 付款方式 | pay_id | |
| 憑證號碼起 | proof_no | |
| 憑證號碼訖 | proof_no2 | |
| 憑證張數 | proof_cnt | [預設值:1] |
| 憑證金額 | amount | [預設值:0] |
invoice_buy 發票購入檔
發票配號,透過配號API(API文件另外提供),此表格只是配號的內容
| 中文名稱 | 欄位名稱 | 說明 |
|---|---|---|
| 分店編號 | shop_id | |
| 起始年月 | Begin_ym | |
| 截止年月 | End_ym | |
| 發票聯式 | Inv_fmt | 0:二聯式收銀發票; 1:三聯式發票 2:二聯式發票; 9:電子發票 [預設值:0] |
| 發票起始號碼 | Invo_no_b | |
| 發票截止號碼 | Invo_no_e | |
| 狀態 | Status | 0:未彙整; 1:已彙整 |
| 備註 | memo | |
| 傳輸標誌 | transfer_status | 0:待傳; 1:已傳出; 2:傳入; [預設值:0] |
| 傳輸異動日 | last_update | [預設值:系統日期] |
| 發票張數 | num | [預設值:0] |
| POSID | pos_id | |
| 使用順序 | using_seq | |
| 使用狀態 | use | 0:未使用; 1:使用中; 2:已使用 [預設值:0] |
| 最後開立發票號 | curr_invno |
invoice_rec 發票記錄檔
這是發票使用的紀錄,每次開發票,會將開立的資訊寫入此table。交易的詳細內容,請由ticket_id查詢詳細交易
| 中文名稱 | 欄位名稱 | 說明 |
|---|---|---|
| 發票號碼起 | inv_no_b | |
| 發票號碼訖 | inv_no_e | |
| 分店編號 | shop_id | |
| 關聯單據 | ticket_id | |
| 開立日期 | input_date | |
| 客戶統編 | cust_code | |
| 開立金額 | amount | [預設值:0] |
| 應稅金額 | tax | [預設值:0] |
| 稅別 | taxtype | 1:應稅; 2:免稅; 3:零稅; 4:作廢; [預設值:1] |
| 發票狀態 | inv_status | 0:正常; 1:作廢; 2:空白; [預設值:0] |
| 異動日期 | mod_date | |
| 異動人員 | mod_user | |
| 開立人員 | user_id | |
| 機號 | pos_id | |
| 開立來源 | inv_source | 0:銷貨單; 1:客戶訂貨單; 2:票券銷售; 3:WEB收款; 9:補登; [預設值:0] |
| 傳輸標誌 | transfer_status | 0:待傳; 1:已傳出; 2:傳入; [預設值:0] |
| 傳輸異動日 | last_update | [預設值:系統日期] |
| 拆單單據 | Split_id | |
| PK單號 | pkno | |
| 發票隨機碼 | random_no |
payment
| pay_id | pay name |
|---|---|
| Q001 | 信用卡(APP) |
| Q004 | 優惠券(APP) |
| Q005 | NCCC信用卡(APP) |
| Q006 | LINE Pay(APP) |
| Q007 | Pi支付(APP) |
| Q011 | NCCC信用卡(KIOSK) |
| Q012 | Pi錢包(KIOSK) |
| Q013 | 旺PAY |
| Q014 | Uber Eats |
| Q015 | 現金(APP) |
| Q016 | 台新ONE碼(APP) |
| Q017 | 悠遊付(KIOSK) |
| Q018 | 麥味登Pay(APP) |
| Q019 | GooglePay(APP) |
| Q020 | applePay(APP) |
| Q021 | 點數折抵(APP) |
| Q022 | 悠遊付(APP) |
| Q023 | LINE Pay(EC) |
| Q024 | NCCC信用卡(EC) |
| Q025 | foodpanda |
| Q026 | 信用卡(QC) |
| Q027 | NCCC悠遊卡(KIOSK) |
| Q028 | NCCC一卡通(KIOSK) |
| Q029 | NCCC iCash(KIOSK) |
| Q030 | NCCC有錢卡(KIOSK) |
接單異動訂單狀態API
update order status
Resource
POST /weborder/newProcessCommand
Request Body Parameters
| Name | Type | Description |
|---|---|---|
| op | string | 功能代碼:update_order_status |
| worder_id | string | 訂單編號 |
| status | string | 訂單狀態 |
| caller | string | 使用者代號:5 |
| isGod | string | 是否特殊模式:0 |
Request Example
POST /weborder/newProcessCommand
Request Body Example
{
"op": "update_order_status",
"worder_id": "01WA01202202080001",
"status": "5",
"caller": "5",
"isGod": "0"
}
Response
{
"code": "0",
"message": "success"
}