?
一、開發(fā)前準(zhǔn)備??
1. 注冊并開通微信小店
- ??主體要求??:需為企業(yè)/個體工商戶(個人暫不支持),需提供營業(yè)執(zhí)照、法人身份證、銀行賬戶等信息。
- ??步驟??:
- 登錄 微信公眾平臺,注冊并認(rèn)證公眾號(服務(wù)號或小程序)。
- 進(jìn)入公眾號后臺 → 左側(cè)導(dǎo)航欄「微信小店」→ 點(diǎn)擊「開通」,按提示提交資質(zhì)(營業(yè)執(zhí)照、管理員信息等)。
- 審核通過后,小店基礎(chǔ)功能(商品、訂單、支付)自動開通。

2. 獲取關(guān)鍵憑證
- ??商戶號(mch_id)??:用于支付接口調(diào)用(需單獨(dú)申請微信支付商戶號,部分小店場景可能自動關(guān)聯(lián))。
- ??API密鑰(API Key)??:用于接口簽名驗(yàn)證(在微信支付商戶平臺設(shè)置)。
- ??AppID??:公眾號或小程序的唯一標(biāo)識(在各自后臺獲?。?。
- ??服務(wù)器IP白名單??:需將開發(fā)服務(wù)器IP添加到微信公眾平臺或支付商戶平臺的“IP白名單”,否則接口調(diào)用會被拒絕。
3. 熟悉開發(fā)文檔
- 官方接口文檔:微信小商店開放平臺(含商品、訂單、物流等接口)。
- 微信支付文檔:微信支付開發(fā)指南(支付、退款等核心功能)。
??二、核心接口調(diào)用(以RESTful API為例)??
微信小店提供??商品管理、訂單管理、物流查詢、售后管理??等API,需通過access_token
鑒權(quán)。以下是關(guān)鍵步驟:
1. 獲取access_token
access_token
是調(diào)用所有接口的憑證,有效期2小時,需定期刷新。
??請求示例(HTTP GET)??:
http復(fù)制
APPID
:公眾號/小程序的AppID;APPSECRET
:公眾號/小程序的密鑰(需在后臺保密)。
??返回結(jié)果??:
json復(fù)制
2. 商品管理接口(示例)
??場景??:新增一個商品到小店。
??接口路徑??:POST https://api.weixin.qq.com/shop/goods/add?access_token=ACCESS_TOKEN
??請求參數(shù)??(JSON格式):
json復(fù)制
??返回結(jié)果??:
json復(fù)制
3. 訂單管理接口(示例)
??場景??:查詢訂單詳情。
??接口路徑??:GET https://api.weixin.qq.com/shop/order/get?access_token=ACCESS_TOKEN&order_id=ORDER_ID
??返回結(jié)果??(關(guān)鍵字段):
json復(fù)制
4. 支付接口(關(guān)鍵)
微信小店支付需通過??微信支付商戶號??完成,核心流程:
- 商家生成預(yù)支付訂單(調(diào)用
統(tǒng)一下單
接口); - 用戶支付后,微信異步通知商家服務(wù)器;
- 商家驗(yàn)證通知簽名,更新訂單狀態(tài)。
??統(tǒng)一下單接口示例(HTTP POST)??:
http復(fù)制
??請求參數(shù)(JSON)??:
json復(fù)制
??注意??:需使用商戶私鑰對請求簽名(具體簽名算法見微信支付簽名指南)。
??三、前端開發(fā)(公眾號/H5/小程序)??
1. 公眾號內(nèi)H5頁面
- ??JS-SDK集成??:需引入微信JS-SDK,實(shí)現(xiàn)分享、獲取用戶信息等功能。
通過后端接口獲取html預(yù)覽復(fù)制jsapi_ticket
和簽名,配置JS-SDK權(quán)限:javascript運(yùn)行復(fù)制
2. 小程序開發(fā)
- ??關(guān)聯(lián)小商店??:小程序需綁定已開通的微信小店(在小程序后臺「電商」→「小商店」中關(guān)聯(lián))。
- ??調(diào)用小商店API??:通過
wx.request
調(diào)用小商店接口(需先獲取access_token
)。javascript運(yùn)行復(fù)制
3. 支付交互
- 用戶點(diǎn)擊支付時,前端調(diào)用
wx.requestPayment
(小程序)或跳轉(zhuǎn)H5支付頁面(公眾號)。
??小程序支付示例??:javascript運(yùn)行復(fù)制
??四、后端開發(fā)(核心邏輯)??
1. 數(shù)據(jù)庫設(shè)計
需設(shè)計以下核心表(根據(jù)業(yè)務(wù)擴(kuò)展):
goods
:存儲商品信息(ID、名稱、價格、庫存、圖片等);orders
:訂單表(訂單ID、用戶openid、總金額、狀態(tài)、創(chuàng)建時間等);order_items
:訂單商品明細(xì)(關(guān)聯(lián)訂單ID和商品ID);logistics
:物流信息(訂單ID、快遞公司、運(yùn)單號等)。
2. 異步通知處理
微信支付、訂單狀態(tài)變更等操作會通過??異步通知??告知商家(如支付成功通知)。需在后端:
- 接收XML/JSON格式的通知數(shù)據(jù);
- 驗(yàn)證簽名(確保數(shù)據(jù)來自微信);
- 處理業(yè)務(wù)邏輯(如更新訂單狀態(tài)、發(fā)貨);
- 返回
SUCCESS
響應(yīng)(否則微信會重復(fù)通知)。
??支付通知驗(yàn)證示例(Python)??:
python運(yùn)行復(fù)制
3. 安全防護(hù)
- ??防重放攻擊??:記錄已處理的
transaction_id
或out_trade_no
,避免重復(fù)處理; - ??數(shù)據(jù)加密??:敏感信息(如用戶手機(jī)號、地址)需加密存儲;
- ??接口限流??:防止惡意請求(如通過Nginx或中間件限制頻率)。
??五、測試與上線??
1. 沙箱環(huán)境測試
微信提供??沙箱環(huán)境??(支付接口)用于測試,避免影響生產(chǎn)數(shù)據(jù)。需在商戶平臺切換至沙箱模式,使用沙箱的APPID
、mch_id
和API Key
調(diào)用接口。
2. 上線前檢查
- 確認(rèn)所有接口權(quán)限已開通(如商品發(fā)布、支付);
- 測試極端場景(如庫存不足、支付失敗、退款);
- 驗(yàn)證日志記錄(接口調(diào)用日志、錯誤日志)是否完整;
- 關(guān)閉沙箱環(huán)境,切換至生產(chǎn)環(huán)境配置。
3. 提交審核(可選)
若小店涉及特殊類目(如食品、藥品),需提交相關(guān)資質(zhì)至微信審核,審核通過后方可上線。
??六、官方資源與工具??
- 微信小商店開放平臺文檔:接口說明;
- 微信支付商戶平臺:支付相關(guān)配置與對賬;
- 開發(fā)者社區(qū):問題答疑與經(jīng)驗(yàn)分享;
- Postman模板:接口調(diào)試工具(含示例請求)。
??總結(jié)??:微信小店開發(fā)需結(jié)合官方API和業(yè)務(wù)需求,重點(diǎn)關(guān)注??接口鑒權(quán)、支付流程、數(shù)據(jù)安全??三大核心。建議先通過沙箱環(huán)境驗(yàn)證功能,再逐步上線生產(chǎn)環(huán)境。