合同费用明细导入接口
说明
该接口用于进行合同费用明细导入,用于在导入合同前,先将合同明细信息导入系统,再在接口中进行关联。关联合同的部分可以查看合同导入接口。
接口限制
10次/秒/企业
注意事项
- 该接口为部分失败。例如一次导入5条费用,其中一条失败,不会影响其他四条数据的正常导入。
- 每次导入最大值为10条费用.
- 支持导入分摊数据,分摊和费用一起作为整体,一起成功或一起失败。如果导入多笔费用下有多条分摊数据,其中一笔费用下的一条分摊字段有问题,导入失败的原因只能定位到第x条费用有问题。
- 每条费用下导入最大值为100条分摊数据。
- 根据返回的integrity可以识别该费用是否必填项传入完整:
- true:所有必填项均传入成功
- false
- 接口可导入的必填项未导入完整
- 不支持接口导入,但表单设置必填(此情况需要设置单据导入为草稿或者去除费用上对应组件的必填设置)
接口地址
/api/openapi/receive/contract/expense
请求类型
POST
请求参数
请求参数说明
字段名 |
类型 |
说明 |
必填性 |
employeeId |
String |
需要导入的对应员工的工号 |
是 |
expenseTemps |
List<ReceivedContractExpenseTemp> |
明细表单 |
是 |
ReceivedContractExpenseTemp明细表单
字段名 |
类型 |
说明 |
必填性 |
consumeAmount |
AmountInput |
费用金额 |
是 |
expenseTypeBizCode |
String |
费用类型业务编码 |
是 |
customObject |
Map |
自定义普通字段 |
遵循表单配置 |
allocationList |
List<ExpenseAllocationTemp> |
分摊列表 |
否 |
allocationRuleBizCode |
String |
分摊规则编码,分摊列表不为空则必填 |
否 |
amortizationList |
List<ExpenseAmortizationTemp> |
摊销列表 |
否 |
invoiceType |
String |
发票类型 |
遵循表单配置 VAT_SPECIAL_INVOICE(增值税专用发票)、VAT_GENERAL_INVOICE(增值税普通发票)、NO_INVOICE(无票) |
noTaxSuiteTemp |
NoTaxInput |
不含税组件 |
否 |
labourTax |
LabourInput |
劳务费个税 |
否 |
ExpenseAllocationTemp分摊表单
字段名 |
类型 |
说明 |
必填性 |
allocatedAmount |
number |
分摊金额 |
必填 |
legalEntityBizCode |
String |
公司抬头业务编码 |
遵循表单配置 |
coverUserNo |
String |
承担人工号 |
遵循表单配置 |
coverDepartmentBizCode |
String |
承担部门编码 |
遵循表单配置 |
customObject |
CustomObject |
自定义普通字段 |
遵循表单配置 |
ExpenseAmortizationTemp摊销表单
字段名 |
类型 |
说明 |
必填性 |
amount |
number |
摊销金额 |
是 |
amortizedDate |
long |
摊销时间(根据时间戳后台会自动处理成YYYY-MM格式) |
是 |
请求参数样例
{
"employeeId": "200070",
"expenseTemps": [
{
"consumeAmount": {
"amount": 100,
"currency": "CNY"
},
"expenseTypeBizCode": "xx02.002",
"customObject": {
},
"amortizationList":[
{
"amount": "20",
"amortizedDate": 1715236293587
},
{
"amount": "50",
"amortizedDate": 1717914693000
},
{
"amount": "30",
"amortizedDate": 1720506693000
}
],
"allocationList": [
{
"allocatedAmount": "40",
"coverDepartmentBizCode": "DI2104261VG4UCRO"
},
{
"allocatedAmount": "60",
"coverDepartmentBizCode": "DI2104261VXXUCRU"
}
],
"allocationRuleBizCode": "ALR2310261HW5EQ2O",
"invoiceType": "NO_INVOICE",
"noTaxSuiteTemp": {
"taxRate": "0.1",
"taxAmount": "10",
"nonTaxAmount": "90"
},
"labourTax": {
"amount": {
"currency": "CNY",
"amount": "1000"
} ,
"amountType": "pre" ,
"autoCalculate": true
}
}
]
}
响应参数
响应参数说明
字段 |
字段类型 |
字段说明 |
code |
String |
返回结果 |
message |
String |
返回提示 |
data |
Json |
返回结果 |
success |
boolean |
是否成功 |
参数样例
- 正常响应参数示例
```json
{
"code": "ACK",
"message": "操作成功",
"data": {
"errorData": null,
"successData": [{ //成功的信息
"idx": 0, //第几个费用导入成功了
"expenseCode": "EXPCODE001", //费用CODE
"integrity": false
}]
},
"success": true
}
2. 每刻校验异常响应参数示例<br/>
```json
{
"code": "NACK",
"message": "操作失败!",
"data": {
"errorData": [{ //失败的信息
"idx": 1, //第几个费用导入失败了
"errorCode": "10000",
"errorMessage": "费用类型不存在" //目前接口内异常信息正在完善
}],
"successData": [{ //成功的信息
"idx": 0, //第几个费用导入成功了
"expenseCode": "EXPCODE001", //费用CODE
"integrity": false
}]
},
"success": false
}
修改记录
2024-05-10 新增合同明细导入文档
2024-07-19 新增不含税组件导入
2024-07-19 新增发票类型导入