金蝶云星空 × SRM 深度集成实战(附完整接口清单)
4 周交付!金蝶云星空 × SRM 深度集成实战(附完整接口清单)
—— 一篇能直接落地的万字长文,建议收藏 ——
一、为什么我们要干掉 Excel
过去,我们的采购员每天把金蝶里的 PO 导出 → 发邮件给供应商 → 供应商回传盖章 PDF → 人工再录回金蝶;付款时又要从 SRM 把申请单导出 → 财务在金蝶二次录入 → 手工对账。
结果:
- 一张变更单来回 4 个版本,交期平均延误 3.2 天;
- 每月付款对账 2 个人/2 天,差异率高 1.8%;
- 供应商投诉“到底以哪个系统数据为准?”。
于是,4 周时间,我们完成了“金蝶云星空 + SRM”全链路集成,上线后:
- 采购订单确认时效 ≤ 2 h;
- 付款对账自动化 95%,人工仅处理异常;
- 供应商满意度提升 30%。
下面把全过程、踩坑点、脚本、接口全部公开。
二、整体技术架构
系统/模块 | 协议/技术 | 角色 | 备注 |
---|---|---|---|
金蝶云星空 | REST API | 主数据 | OAuth2 鉴权 |
轻易云 ESB | MQ + 映射 | 中间件 | 可视化拖拽 |
SRM | OpenAPI | 协同端 | HMAC 鉴权 |
- 消息总线:RabbitMQ,削峰填谷;
- 同步接口:30 s;异步单据:5 min 补偿;
- 幂等:UUID 流水号全局唯一。
三、主数据“单向同步”设计
数据对象 | 触发方式 | 频率 | 冲突策略 | 备注 |
---|---|---|---|---|
物料 | 新增/修改 | 定时异步 | 金蝶为准 | SKU 编码映射 |
供应商 | 新增 | 定时异步 | 金蝶为准 | 统一社会信用代码主键 |
仓库 | 批处理 | 1 h | 金蝶为准 | 不参与 MRP |
银行 | 批处理 | 1 h | 金蝶为准 | 付款申请使用 |
踩坑:金蝶补丁升级字段改名 → 建立“字段变更通知群”,升级前回归测试。
四、4 大业务流程“双向协同”
采购订单 PO
金蝶创建 → SRM 推送(状态=待确认) → 供应商在线确认 → 回写金蝶“已确认”。
采购变更单
金蝶发起变更 → SRM 差异高亮 → 供应商一键“接受差异” → 回写金蝶生效。供应商准入
SRM 发起 → 金蝶生成“潜在供应商” → 质量/财务/审计三级审批 → 结果回写 SRM 自动开通账号。付款申请
SRM 按账期生成 → 金蝶生成付款单 → 网银付款 → 回写 SRM 付款状态+水单 PDF。
五、核心 12 个接口(可直接抄)
编号 | 接口 | 方向 | 方法 | 关键字段 |
---|---|---|---|---|
MD-01 | 物料同步 | 金蝶→SRM | POST | FNumber,FName,FBARCODE |
PO-01 | 采购订单下发 | 金蝶→SRM | POST | FPOOrderNo,FMaterialId,FQty |
PO-02 | 订单确认回写 | SRM→金蝶 | PATCH | FConfirmStatus |
CH-01 | 变更单下发 | 金蝶→SRM | POST | FChangeNo,FChangeType |
CH-02 | 变更确认回写 | SRM→金蝶 | PATCH | FSupplierConfirm |
AD-01 | 准入申请推送 | SRM→金蝶 | POST | FSupplierName,FApplyUser |
AD-02 | 准入结果回写 | 金蝶→SRM | PATCH | FAuditStatus |
PAY-01 | 付款申请推送 | SRM→金蝶 | POST | FPayApplyNo,FAmount,FInvoiceNo |
PAY-02 | 付款结果回写 | 金蝶→SRM | PATCH | FPayStatus,FBankSlipUrl |
WH-01 | 仓库同步 | 金蝶→SRM | POST | FStockId,FName |
BN-01 | 银行档案同步 | 金蝶→SRM | POST | FBankId,FAccount |
脚本示例(Python):
import requests, uuid, json, hmac, hashlib, timedef push_po_to_srm(po_json):url = "https://srm.xxx.com/api/po"app_key, secret = "your_key", b"your_secret"ts = str(int(time.time()))body = json.dumps(po_json, ensure_ascii=False)sign = hmac.new(secret, (app_key+ts+body).encode(), hashlib.sha256).hexdigest()headers = {"Content-Type":"application/json","X-App-Key":app_key,"X-Timestamp":ts,"X-Sign":sign,"X-Request-ID":str(uuid.uuid4())}r = requests.post(url, data=body.encode(), headers=headers, timeout=10)r.raise_for_status()
六、异常处理 & 监控
- 失败重试:轻易云指数退避 5 次 → 死信队列 → 钉钉告警;
- 对账脚本:每日 02:00 跑“数量/金额”校验,差异>±1 % 自动提 Issue;
- SLA:接口成功率≥99.5 %,平均响应<1 s。
七、4 周极速落地计划
天数 | 任务 | 产出 |
---|---|---|
Day 1-3 | 需求澄清+POC | 需求说明书 |
Day 4-18 | 轻易云配置+字段映射 | 集成设计文档 |
Day 19-20 | 沙箱测试 | 测试报告 |
Day 21 | 用户培训 | PPT+手册 |
Day 22-26 | 并行上线 | 上线报告 |
八、常见坑 & 对策
场景 | 影响 | 解决方案 |
---|---|---|
金蝶补丁改字段 | 接口 500 | 监控开放平台通知+回归脚本 |
SRM 限流 200 req/min | 高峰期阻塞 | 令牌桶 + 队列 |
供应商不点“确认” | 交期延误 | SRM 内置 24h 钉钉催办机器人 |
九、一键复制资料包
- 集成设计文档(Word)
- 接口字段映射表(Excel)
- Python 推送脚本(Github Gist)
- 轻易云流程包(JSON,直接导入)
- 运维监控手册(Markdown)
十、结语
整套方案从 0 到 1 只花了 4 周,“主数据单向同步 + 业务流程双向协同”是核心思路,ESB 做兜底,监控做闭环。如果你也在做金蝶云星空与 SRM 的集成,希望这篇实战能帮你少走 3 个月弯路。