2026-09-02 · 原文发布日
酒类批发订单合规路由
n8n付费模板(作者标价大于0):webhook接收零售商订单,在Google Sheets查该客户的区域归属、品类许可限制和限量配额余额,由OpenAI按三层分销规则评估并返回结构化裁决,正常单邮件通知销售运营,区域冲突或许可不符转合规团队,全部决策追加到审计日志表。
原文要点
原模板为付费n8n模板:webhook接收零售商订单,规范化retailer、state、license type、SKU category、quantity、delivery date;按retailerId在Google Sheets“Territory & Allocation Map”查assignedTerritoryState、skuLicenseRestriction、limitedReleaseCapCasesRemaining;OpenAI按三层分销规则输出category、confidence、reasoning、approved quantity;批准或配额问题邮件给sales ops,区域冲突/许可不符给compliance,并追加“Distribution Order Log”。
这次做成什么
做出一条可本地演练的合规路由:Webhook POST→字段标准化→Sheets查区域/许可/配额→OpenAI结构化裁决→Gmail分支通知→Sheets审计日志;本站示例不是付费原工作流文件。
准备什么
- n8n环境可启用Webhook测试URL和生产URL
- Google账号含两张测试表:Territory & Allocation Map与Distribution Order Log
- OpenAI API key,可用聊天模型并强制JSON输出
- Gmail OAuth2测试收件箱,分别代表sales ops与compliance
- 批发门户或Postman能对路径craft-brewery-order-intake发POST
具体怎么做
接收并标准化订单
新增Webhook节点,路径按原导读设为craft-brewery-order-intake,方法POST;后接Set/Code把payload统一成retailerId,retailerName,state,licenseType,skuCategory,quantity,deliveryDate,缺字段标记invalid并直接回400。
查询三张合规维度
Google Sheets Lookup按retailerId读Territory & Allocation Map,返回assignedTerritoryState、skuLicenseRestriction、limitedReleaseCapCasesRemaining;查不到时设lookupStatus=NOT_FOUND并路由合规,不进入批准。
OpenAI裁决
用OpenAI Chat节点,temperature设低,response_format用JSON object;提示词要求只依据输入和查表结果判断territory exclusivity、license eligibility、limited-release cap,输出decisionCategory,confidence,reasoning,approvedQuantity,禁止编造法规。
分支通知与审计
Switch按decisionCategory:APPROVED或ALLOCATION_CAP_ISSUE发Gmail给sales-ops-test@example.test;TERRITORY_CONFLICT或LICENSE_INELIGIBLE发给compliance-test@example.test;最后Sheets Append写timestamp,retailerId,state,licenseType,skuCategory,quantity,decisionCategory,confidence,reasoning,approvedQuantity。
可直接复制的材料
合规裁决提示词
本站独立编写;原模板只称OpenAI chat model,具体模型与JSON参数需在付费模板内核对。
你是酒类三层分销订单合规评估器。只使用给定JSON中的订单字段与Google Sheets查表结果,不引用外部法律知识,不编造州规。输出严格JSON:{"decisionCategory":"APPROVED|ALLOCATION_CAP_ISSUE|TERRITORY_CONFLICT|LICENSE_INELIGIBLE|NEEDS_REVIEW","confidence":0.0,"reasoning":"不超过120字","approvedQuantity":0}。规则:订单state不等于assignedTerritoryState=>TERRITORY_CONFLICT;skuLicenseRestriction含licenseType不匹配=>LICENSE_INELIGIBLE;quantity大于limitedReleaseCapCasesRemaining=>ALLOCATION_CAP_ISSUE且approvedQuantity不超过余额;多冲突按LICENSE>TERRITORY>CAP排序;证据不足=>NEEDS_REVIEW。Territory & Allocation Map测试行
合成配置;真实州许可限制应由合规团队维护,不能当法律意见。
retailerId,assignedTerritoryState,skuLicenseRestriction,limitedReleaseCapCasesRemaining
R-1001,TX,RETAIL_BEER_ONLY,40
R-2002,CA,RETAIL_BEER_WINE,12
R-3003,TX,RETAIL_SPIRITS_OK,0Webhook测试payload与日志字段
收件箱为测试占位;如需接Ekos/SevenFifty/Encompass,仅在管理员后台确认可发webhook。
{"webhookPath":"craft-brewery-order-intake","testPayload":{"retailerId":"R-1001","retailerName":"Mock Bottle Shop","state":"CA","licenseType":"RETAIL_BEER_ONLY","skuCategory":"BEER","quantity":30,"deliveryDate":"2026-09-10"},"logTab":"Distribution Order Log","logColumns":["timestamp","retailerId","state","licenseType","skuCategory","quantity","decisionCategory","confidence","reasoning","approvedQuantity"],"recipients":{"salesOps":"sales-ops-test@example.test","compliance":"compliance-test@example.test"}}输入与输出示例
本站虚构演示,非作者运行结果;置信度为示例输出格式,不作准确率承诺。
输入
POST testPayload:R-1001在表内assignedTerritoryState=TX,但订单state=CA,licenseType匹配BEER,数量30低于余额40。对应输出
示意OpenAI JSON:{"decisionCategory":"TERRITORY_CONFLICT","confidence":0.91,"reasoning":"订单州CA与表内专属区域TX不一致,许可匹配但区域冲突优先。","approvedQuantity":0};路由应发compliance-test@example.test,日志同行记录approvedQuantity=0。做完检查这些
- Webhook对缺retailerId的POST返回400且不发任何邮件
- Sheets查不到retailerId时进入NEEDS_REVIEW或合规,不会自动批准
- 区域冲突邮件只进compliance收件箱,不抄送sales ops批准通道
- 日志每行包含输入数量、裁决类别、approvedQuantity和reasoning
- approvedQuantity永不超limitedReleaseCapCasesRemaining,超额时类别为ALLOCATION_CAP_ISSUE
容易卡住的地方
- 这是付费模板,本站未获得原文件,示例节点名与界面需在模板内核对,不能称已实测
- 把提示词当法律依据风险高,真实上线前应由合规/法务确认州规则
- Google Sheets静态映射会过期,原导读建议可改HTTP查州酒牌但需另行验证API
- Gmail/Slack/Telegram通知凭据混用可能误发,练习只用测试收件箱
- 审计日志不可篡改性取决于表格权限与流程设计,Google Sheets本身不等于合规存证
本站借助AI整理来源事实,独立编写中文操作指南与示例。示例不代表实际运行结果;来源效果尚未由本站独立复现。付费模板与模型、服务费用分别计算。
- 原文标题
- Route craft brewery orders with OpenAI, Google Sheets, and Gmail
- 原作者
- Swapnil Mandloi
- 原始发布日期
- 2026-09-02T04:53:47.747Z
- 来源
- https://n8n.io/workflows/19040