合同变更接口

业务场景

该接口用于进行合同变更。需要在合同的单据类型上开启“合同单据流程完结后允许变更”并配置流程,需要变更的字段开启了“发起人提交前填单(变更时)”才允许变更(提单时的表单字段权限)。

目前该接口中,仅支持部分主要字段,如果您所需要导入的字段不在文档内,请联系每刻工作人员。

注意事项:

  1. 若变更时,填写formCode,则会校验是否和每刻系统内单据号重复(每刻内单据作废/删除,不会释放原单据号)。
  2. 相当于依据原合同创建一个新合同,变更接口未传非必填的字段认为是不需要变更本字段对应的表单组件内容。
  3. “责任人列表”变更请调用合同变更责任人接口。
  4. 原单据必须是流程完结且未作废、未停用。
  5. 合同变更的形式为作废原合同,产生新合同,原合同变更后的状态为“已变更”

请求类型

POST

接口地址

/api/openapi/receive/contract/change

请求参数

在各个表单中,分为系统字段、业务字段及普通字段。业务字段及普通字段可以通过单据配置界面中的开发者模式来查看该字段导入时的的key值,其中普通字段的key值支持在界面中进行配置修改。系统字段在表单配置界面中不会显示如changUserEmployeeId 字段

参数说明

字段名 类型 说明 必填性
changUserEmployeeId String 当前操作人工号。
(仅限待变更合同责任人列表中的人员)
是
contractFormCode String 需要进行变更的合同单据Code 是
changeReason String 变更原因 是
formCode String 变更后合同的单据Code,如果填写,则会使用该formCode作为合同的单据号,不传系统自动生成 否
responsibleDepartmentBizCode String 责任部门编码 否
contractName String 合同名称 否
contractNum String 合同编码 否
contractAmount AmountInput 系统字段,合同金额 否
tradingPartnerBizCode String 往来单位业务编码 否
procurementDetails List<ProcurementDetail> 采购明细 否
paymentPlanChang Object 付款计划变更。见下表 否
legalEntityBizCode String 公司抬头业务编码 否
payeeAccount PayeeAccount 收款账户 否
customObject CustomObject 自定义普通字段 否
stagingFlag boolean 暂存标识,true暂存,默认为false表示提交单据 否
contractDateDto contractDateDto 合同日期 否
ifReMatchBudget Boolean 是否重新匹配预算,默认为false 否
budgetSubjectBizCode String 合同主表预算科目业务编码。未传时接口层不强制拦截,若预算执行规则命中“按合同主表预算科目匹配”则由预算匹配阶段返回业务错误 否

paymentPlanChang

PaymentPlan格式请参考每刻单据导入的数据格式。
注意:付款计划变更结果是 原付款计划未变更的+更新的+新增的-移除的

字段名称 字段类型 字段说明 是否必填
update List<PaymentPlan> 需要更新的付款计划按code更新某条原付款计划 否
remove List<PaymentPlan> 需要移除的付款计划按code移除某条原付款计划,如果该条已发起过付款则不允许删除 否
add List<PaymentPlan> 需要新增的付款计划 否

contractDateDto 合同日期

字段名称 字段类型 字段说明 是否必填
startDate Long 合同开始日期 是
startDateZoneId String 合同开始日期对应的 IANA 时区 ID,如 Asia/Shanghai 否
endDate Long 合同结束日期 是
endDateZoneId String 合同结束日期对应的 IANA 时区 ID,如 Asia/Shanghai 否

参数示例

{
  "changUserEmployeeId": "YYZ001",
  "contractFormCode": "MK22110116",
  "changeReason": "合同变更演示",
  "formCode": "FORM001",
  "contractName": "每刻的合同名称",
  "contractNum": "合同号001",
  "comment": "我是备注",
  "tradingPartnerBizCode": "BIZ001",
  "responsibleDepartmentBizCode": "DEPT001",
  "legalEntityBizCode": "LEB001",
  "ifReMatchBudget": true,
  "budgetSubjectBizCode": "BIZCODE",
  "contractAmount": {
    "amount": "100",
    "currency": "CNY"
  },
  "payeeAccount": {
    "bankAcctName": "杭州每刻银行",
    "bankAcctNumber": "6217000010001234123",
    "paymentType": "BANK",
    "accountType": "CORP"
  },
  "procurementDetails": [
    {
      "commodityName": "商品名称",
      "specifications": "规格",
      "quantity": 1,
      "unit": "单位",
      "unitPrice": {
        "amount": "100",
        "currency": "CNY"
      },
      "totalAmount": {
        "amount": "100",
        "currency": "CNY"
      }
    }
  ],
  "paymentPlanChang": {
    "remove": [
      {
        "code": "PPI221122Z9HLFUO"
      }
    ],
    "add": [
      {
        "periodNo": 1,
        "paymentInfo": {
          "ratio": 100,
          "amount": {
            "amount": "50.00",
            "currency": "CNY"
          }
        },
        "expectTime": 1566204741186,
        "expectTimeZoneId": "Asia/Shanghai",
        "customObject": {
          "note": "付款备注"
        }
      }
    ],
    "update": [
      {
        "periodNo": 1,
        "code": "PPI221122Z9HLFUO",
        "paymentInfo": {
          "ratio": 100,
          "amount": {
            "amount": "50.00",
            "currency": "CNY"
          }
        },
        "expectTime": 1566204741186,
        "expectTimeZoneId": "Asia/Shanghai",
        "customObject": {
          "note": "付款备注"
        }
      }
    ]
  },
  "customObject": {
    "CF1393": "我是单行文本",
    "remarkText": "我是单行文本",
    "detail": [
      {
        "CF1400": "我是单行文本",
        "remarkText": "我是单行文本"
      }
    ]
  },
  "stagingFlag": false,
  "contractDateDto": {
    "startDate": 1566305356934,
    "startDateZoneId": "Asia/Shanghai",
    "endDate": 1566305356938,
    "endDateZoneId": "Asia/Shanghai"
  }
}

预算科目相关错误说明

错误信息 说明
未匹配到预算科目 预算执行规则命中“按合同主表预算科目匹配”,但未传 budgetSubjectBizCode 或未取到有效预算科目时返回
预算科目不存在/停用/不可用相关提示 传入的 budgetSubjectBizCode 在系统内不存在、停用或对当前合同不可用时,由预算科目查询或预算匹配阶段返回对应业务错误

修改记录

2026-07-01  新增合同主表预算科目字段说明
2026-08-13  新增 contractDateDto.startDateZoneId/endDateZoneId、paymentPlanChang.expectTimeZoneId 字段
Copyright © 杭州每刻科技有限公司 www.maycur.com all right reserved,powered by Gitbook该文件修订时间: 2026-09-23 10:19:53

results matching ""

    No results matching ""

    results matching ""

      No results matching ""