Back to skills
extension
Category: Development & EngineeringNo API key required

租赁电子合同回传Skill

租赁电子合同回传技能,具备 Agent 自主执行能力。通过调用支付宝开放平台 API,可将已签署的电子合同 PDF 文件上传并回传至租赁行业交易订单。覆盖文件上传(alipay.open.file.upload)和附加材料回传(alipay.commerce.rent.additional.upload)两个核心接口,支持批量文件回传、参数校验、错误码排查。提供技术咨询、合同回传、代码集成三种使用模式,自动处理签名、文件上传、订单关联。适用于开发者联调测试、运营合同补传、技术支持问题排查、系统代码集成等场景。

personAuthor: dongl1111hubModelScope

租赁电子合同回传 Skill

技能概述

本 Skill 提供租赁电子合同回传的全流程操作能力,通过调用支付宝开放平台 API 将已签署的电子合同 PDF 文件上传至租赁行业交易订单。

前置准备

申请条件

重要

  • 需已接入租赁行业交易解决方案
  • 不支持沙箱调试,需使用生产环境

使用前请确保已完成:

  • 在支付宝开放平台创建应用并签约租赁行业交易解决方案
  • 已开通 alipay.open.file.uploadalipay.commerce.rent.additional.upload 接口权限
  • 获取应用 app_id、应用私钥、支付宝公钥

📖 详细接入流程请参阅 租赁行业交易解决方案

环境变量

所有凭证通过环境变量 ALIPAY_APPS 获取,支持多个应用(key 为 appId):

export ALIPAY_APPS='{
  "2021xxx": {
    "private_key": "<应用私钥>",
    "alipay_public_key": "<支付宝公钥>"
  }
}'

多应用示例:

export ALIPAY_APPS='{
  "2021xxx": {
    "private_key": "MIIEvQ...",
    "alipay_public_key": "MIIBIj..."
  },
  "2022yyy": {
    "private_key": "MIIEvQ...",
    "alipay_public_key": "MIIBIj..."
  }
}'

快速开始

详见 README.md

完整流程请参阅 业务流程详解


使用方式

本技能支持三种使用方式:

方式一:交互式引导

用户发起模糊请求时,通过交互式引导逐步完成操作:

用户:电子合同回传
助手:[自我介绍,让用户选择技术咨询或合同回传操作]

详细引导规范请参阅 交互引导规范

方式二:直接指令

用户可通过明确指令直接调用,跳过交互引导:

| 命令 | 说明 | 示例 | |------|------|------| | upload | 上传合同文件(每次1个) | upload --app 2021xxx --file /path/to/contract.pdf | | attach | 回传合同至订单(单个file_id) | attach --app 2021xxx --order_id 2025xxx --file_id A*6XqwQKpS1t0xxx | | attach | 回传合同至订单(多个file_id) | attach --app 2021xxx --order_id 2025xxx --file_ids "A*xxx1,A*xxx2" | | full | 完整流程(单个文件) | full --app 2021xxx --order_id 2025xxx --file /path/to/contract.pdf | | full | 完整流程(多个文件) | full --app 2021xxx --order_id 2025xxx --files "/path/a.pdf,/path/b.pdf" | | example | 查看示例报文 | example upload / example attach |

技术咨询类指令: 接入流程接口文档错误码常见问题

方式三:代码集成

用户需要将电子合同回传能力集成到自己的业务系统中时,提供多语言 SDK 代码示例和集成引导。

代码集成类指令: 代码集成SDK 示例代码示例开发接入集成电子合同回传代码

代码集成工作流

  1. 技术栈检测:自动检测用户项目的技术栈(检测 pom.xml、package.json、requirements.txt、composer.json、*.csproj 等文件)
  2. 语言选择确认:如未检测到或检测结果不明确,询问用户使用的开发语言
  3. 展示代码示例:根据语言展示 SDK 初始化、文件上传、回传接口的完整代码示例
  4. 集成引导:提示代码示例中的关键注意事项和约束条件

支持的开发语言:Java、Python、Node.js、PHP、.NET

代码示例索引请参阅 代码示例索引

业务流程

电子合同回传为两步操作流程:

1.上传合同PDF文件 ──→ 2.回传file_id至租赁订单
     │                        │
     ▼                        ▼
 alipay.open.file.upload   alipay.commerce.rent.additional.upload
     │                        │
     ▼                        ▼
 返回 file_id               订单关联成功

详细的流程图及命令示例请参阅 业务流程详解

文档导航

注意事项

  1. 订单状态要求:回传合同时订单状态需为 SIGNED 及之后,且当前在途(未完结/未取消)
  2. 文件格式:仅支持 PDF 格式的电子合同文件,每次上传仅支持 1 个文件
  3. 文件大小:单文件最大 5MB
  4. biz_code 固定值:上传文件时 biz_code 必须传 rent_material_upload
  5. type 固定值:回传时 type 必须传 RENT_CONTRACT
  6. 同一订单多合同文件fulfillment_additional_media_list 最多支持 10 条,即 1 个 order_id 最多关联 10 个合同文件

错误处理

接口错误码

| 错误码 | 来源接口 | 错误信息 | 解决方案 | |--------|----------|----------|----------| | SYSTEM_ERROR | 附加材料回传 | 系统繁忙 | 服务器异常,可用同样的请求发起重试 | | INVALID_PARAMETER | 附加材料回传 | 参数有误 | 根据返回的 sub_msg 修改参数后重试(常见:order_id 不存在、订单状态不符、file_id 无效) | | FILE_CHECK_FAIL | 文件上传 | 文件MD5校验失败 | 确认MD5值正确后重试 |

脚本自定义错误码

| 错误码 | 触发条件 | 解决方案 | |--------|----------|----------| | CONFIG_ERROR | ALIPAY_APPS 环境变量缺失或格式错误 | 检查 ALIPAY_APPS 是否已正确设置,key 为 appId,包含 private_key 和 alipay_public_key |

更多问题请参阅 常见问题