SAP订单回执状态同步接口规范
最后变更:2026-09-04 20:18
📥 2026-09-04 入库。接口规范 v1.2(2026-09-04),SAP → 纷享销客CRM 订单回执状态同步。
📝 摘要
- 方向与通道:SAP 完成 PO(销售订单)处理后,经纷享销客开放平台 Webhook 推送回执状态至 CRM,订单数据同步与状态更新
- Webhook:与主数据接口同一通道
POST https://open.fxiaoke.com/erp/syncdata/open/webhook/834636/6a2a1b4e0cfd5800077d9505/f49790274d16405e1c5b4f4f2694c534,POST / application/json / UTF-8,仅 Content-Type header
- formId = "PO"(区别于物料 MARA / 客户 CUST)
- 数据结构四层:dataList[] → Header(回执头)+ Item[](行项目)+ Message(处理消息);字段名为清除空格及符号后的 TPM 字段名,字段规范依据《SAP 订单回执状态接口字段规范》Excel 附件(含 Message Header / Header / Item / Message 四层)
- 响应:
{"code":0,"message":"success","data":{}};code=0 成功(文档标注"待确认")
| 字段 |
类型/长度 |
SAP 源 |
说明 |
| TotalCountofSO / TotalCountofFreightOrder / TotalCountofDeliveryOrder / TotalCountofBillingDocument |
NUM(10) |
TOTAL_SO / TOTAL_FO / TOTAL_DO / TOTAL_BIL |
SO/FO/DO/发票 发送数量总计 |
| MessgeSentTimestamp |
DEC(21) |
TIMESTAMPL |
消息发送时间(SAP 长时间戳) |
| RecordSequence |
CHAR(10) |
RE_SEQUENCE |
项目序号 |
| SapSalesOrder |
CHAR(10) |
VBAK-VBELN |
SAP 销售订单号 |
| ExternalOrderId |
CHAR(35) |
VBAK-BSTNK |
外部订单号 |
| DeliveryBlock |
CHAR(2) 可选 |
VBAK-LIFSK |
交货单冻结 |
| OverallCreditBlockStatus |
CHAR(1) 可选 |
VBUK-CMGST |
销售订单信贷状态 |
| DeliveryStatus |
CHAR(1) 可选 |
VBAK-LFSTK |
发货状态 |
| DelRelBillgStatus |
CHAR(1) 可选 |
VBAK-TOTAL_DELIV_RELTD_BILLG_STA |
开票状态 |
2. Item 层(行项目,可多条)
| 字段 |
类型/长度 |
SAP 源 |
说明 |
| ItemNo |
CHAR(3) 必填 |
VBAP-POSNR |
行项目序号 |
| SOOrderQty |
QUAN(13) 必填 |
VBEP-WMENG |
发货数量 |
| ItemConfirmedQty |
QUAN(15) 可选 |
VBEP-BMENG |
确认发货数量 |
| ATPCheckStatus |
CHAR(200) 可选 |
Derived |
ATP 检查状态(如 ATP_CHECK_OK / ATP_CHECK_PARTIAL) |
| FreightOrderNumber |
CHAR(20) 可选 |
/SCMTMS/TOR_ID |
承运单号码 |
| DONumber |
CHAR(10) 可选 |
LIKP-VBELN |
交货单号码 |
| DeliveryItem |
NUMC(6) 可选 |
LIPS-POSNR |
交货单行项目 |
| DeliveryQty |
QUAN(13) 可选 |
LIPS-LFIMG |
行项目发货数量 |
| PGITime |
DEC(15) 可选 |
LIKP-INT_ACT_DATE_TOCD |
过账时间 |
| BillingNumber |
CHAR(10) 可选 |
VBRP-VBELN |
发票号 |
| BillingItem |
NUMC(6) 可选 |
VBRP-POSNR |
发票行项目 |
| InvoicedQty |
QUAN(13) 可选 |
VBRP-FKIMG |
开票数量 |
3. Message 层(处理消息,全必填)
| 字段 |
类型/长度 |
SAP 源 |
说明 |
| Status |
CHAR(200) |
Derived |
接口回传状态 SUCCESS/FAILED |
| Messagestype |
CHAR(1) |
BAPIRET2-TYPE |
Success/Warning/Error |
| Messagescode |
CHAR(20) |
BAPIRET2-ID+NUMBER |
消息编码 |
| Messagestext |
CHAR(220) |
BAPIRET2-MESSAGE |
消息文本 |
4. ⚠️ 审阅关注点
- 字段名拼写硬伤(原文即如此,未修正):MessgeSentTimestamp(缺 e)、Messagestype/Messagescode/Messagestext(多 s)——接口实现时 JSON key 必须按原文错误拼写,否则对不上
- ATPCheckStatus / Status 为 SAP 侧派生字段,无直接源表字段,取值逻辑需 SAP 侧另行确认(文档只给了 ATP_CHECK_OK / ATP_CHECK_PARTIAL 示例)
- 响应 code=0 含义标注"待确认",正式联调前需与纷享销客侧确认错误码全集(主数据接口仅 0/400/401/500 四个,可作参考但非同一规范)
- "3.4 Message 层"章节号跳号(3.1→3.2→3.4),原文如此
- Item 层 Message 挂在行项目内(示例 2.6),文档 §3.1 又说"Status 映射见 3.1 Message Header 层"——Message 归属层级(Header 还是 Item)在原文中表述有歧义,字段映射参考提到四层含独立 Message Header 层,需与字段规范 Excel 附件核对
5. 版本记录