跳转到内容

与 ERP、商城、物流的集成点

用途:划清采购平台与周边系统的边界、定义数据权威与接口契约

对端系统 方向 内容 权威源
ERP 入 组织、员工、预算、科目、库存 ERP
ERP 出 采购订单、收货、应付暂估、发票登记 采购平台(业务过程)/ ERP(财务凭证)
电商商城(Punchout) 双向 目录、购物车、下单、订单状态、对账 商城(商品与价格)/ 平台(审批与预算)
合同系统 双向 合同条款、签章状态、协议价格 合同系统
WMS/物流 双向 发货通知、运单、签收 WMS/承运方(物流事实)
质检/LIMS 入 检验结果、合格数量 质检系统
资金/支付网关 出 付款指令、支付回执 资金系统
风控/征信 入 供应商风险、关联关系 外部数据源
主数据平台 入 物料、供应商、组织 主数据平台或 ERP
  1. 幂等:所有写接口要求业务幂等键(如“单据号 + 操作类型 + 版本”),重复调用返回首次结果。
  2. 异步优先 + 状态回查:跨系统调用不要假设同步可用;提供查询接口,让对端能主动核对最终状态。
  3. 契约版本化:字段新增兼容、语义变更升版本,保留共存期;禁止“加字段改含义”。
  4. 对账兜底:任何集成都要有周期对账(笔数 + 金额 + 状态),差异进入可执行任务队列。
陷阱 表现 对策
主数据双头维护 物料/供应商两边改,谁都不认 明确唯一权威源与同步方向,另一端只读
状态互写 两边都能改同一状态字段,来回跳变 单一 owner + 事件驱动更新,带版本号拒绝旧写
单据号体系不同 外部单号与内部单号混用,检索困难 显式维护映射表,禁止把外部号当主键
大结果集同步 全量拉取打挂对端 增量 + 分页 + 时间窗,或走数仓
汇率与税额口径 金额永远差几分 统一舍入规则与取值时点,写入契约
忽略撤销/冲销语义 只能正向同步,撤回无法表达 接口设计包含冲销与作废动作

对每个外部系统建立独立适配模块:外部 DTO ↔ 内部模型的转换、字段映射配置、异常与重试策略、限流与熔断、调用留痕(请求/响应摘要)。外部字段名不出适配层,替换供应商时改造范围可控。

  • 每条集成链路有独立指标:调用量、成功率、P99 延迟、重试次数、积压、对账差异数。
  • 提供“按业务单号看集成全过程”的排障视图(比翻日志有效得多)。
  • 对端故障时要有降级:本地暂存 + 延迟同步,而不是让业务操作失败。
误区 修正
直连对方数据库读表 通过接口或数据服务,避免 schema 耦合
用同步调用串起所有系统 链路深度导致雪崩,改异步 + 状态机
认为“有重试就一致” 无幂等的重试会造成重复数据
集成文档只写字段不写语义与口径 舍入、时区、状态含义必须写清
上线后无对账 不一致静默累积,月末集中爆发
  • 企业应用集成(EIP)与集成模式(Enterprise Integration Patterns,Hohpe & Woolf)
  • Punchout/eCat 标准协议(cXML、OCI)公开规范