# 新增费用对账单

请求方式: POST(HTTPS
请求地址: https://openapi.waiqin365.com/api/ksfreport/v1/saveExpense/{ openid }/{ timestamp }/{ digest }/{ msg_id } 在线调试 (opens new window)
请求包体:


{
    "statement_no": "ksffy2019120502",
    "customer_code": "CUS000004",
    "start_date": "2019-11-25",
    "end_date": "2019-11-28",
    "dept_code": "002",
    "dept_name":"",
    "dept_source_code":"",
    "trade": [{
            "serial_no": "1",
            "voucher_no": "fy2019120502",
            "trade_date": "",
            "trade_type": "11",
            "exts": [{
                    "ext_key": "悟空",
                    "ext_value": "八戒"
                    }]
             }],
    "exts": [{
            "ext_key": "沙师弟",
            "ext_value": "白龙马"
            }]
}

请求信息

参数 类型 必填 说明
statement_no VARCHAR(32) 对账单号
customer_code VARCHAR(100) 客户编码
start_date VARCHAR(100) 开始日期,格式“yyyy-MM-dd”
end_date VARCHAR(100) 结束日期,格式“yyyy-MM-dd”
dept_code VARCHAR(100) 交易部门编码
dept_name VARCHAR(100) 交易部门名称
dept_source_code VARCHAR(100) 交易部门第三方系统唯一标志
trade 交易明细
trade[].serial_no VARCHAR(32) 交易明细序号
trade[].voucher_no VARCHAR(32) 交易明细凭证
trade[].trade_date VARCHAR(100) 交易明细交易日期,格式“yyyy-MM-dd HH:mm:ss”
trade[].trade_type VARCHAR(32) 交易明细交易类型
trade[].exts 交易明细自定义字段
trade[].exts[].ext_key VARCHAR(32) 交易明细自定义字段名称
trade[].exts[]ext_value VARCHAR(32) 交易明细自定义字段值
exts 对账单自定义字段
exts[].ext_key VARCHAR(32) 自定义字段名称
exts[].ext_value VARCHAR(32) 自定义字段值

返回结果:

{
    "msg_id": "PRD00001",
    "return_code": 0
}

异常结果:

{
    "msg_id": "PRD00001",
    "return_code": 100608,
    "return_msg": "对账单号为空"
}

响应信息

参数 类型 必填 说明
msg_id VARCHAR(32) 消息ID
return_code VARCHAR(32) 响应编码:0成功 1失败
return_msg VARCHAR(100) 响应说明

# 查询费用对账单

请求方式: POST(HTTPS
请求地址: https://openapi.waiqin365.com/api/ksfreport/v1/queryExpenseStatement/{ openid }/{ timestamp }/{ digest }/{ msg_id } 在线调试 (opens new window)
请求包体:


{
    "trade_month": "2019-10"
}

请求信息

参数 类型 必填 说明
customer_code VARCHAR(100) 客户编码
trade_month VARCHAR(32) 对账月份格式“yyyy-MM”
page_number VARCHAR(32) 页数

返回结果:

{
"msg_id":"ORG00001",
"return_code":0,
"response_data":"[{
	"statement_id":"7628813591021350683",
	"serial_no":"FYBJBL8152904002201904",
	"customer_code":"8152904002",
	"customer_name":"门店1",
	"start_date":"2018-03-15",
	"end_date":"2018-03-15",
	"last_person":"张三",
	"last_date":"",
	"statement_status":"已确认",
	"customer_id":"1111122",
	"modify_time":"2018-03-15 19:06:06",
	"approve_name":"李四",
	"approve_time":""
}]"
}

异常结果:

{
    "msg_id": "PRD00001",
    "return_code": 1,
    "return_msg": "对账月份不能为空!"
}

响应信息

参数 类型 必填 说明
statement_id VARCHAR(32) 外勤对账单id
serial_no VARCHAR(32) 对账单号
customer_code VARCHAR(100) 客户编码
customer_name VARCHAR(100) 客户名称
start_date VARCHAR (32) 开始日期,格式“yyyy-MM-dd”
end_date VARCHAR (32) 结束日期,格式“yyyy-MM-dd”
last_person VARCHAR (100) 最后生成人
last_date VARCHAR (32) 最后生成时间,格式“yyyy-MM-dd”
statement_status VARCHAR(32) 对账单状态
modify_time VARCHAR(32) 修改时间,格式“yyyy-MM-dd HH:mm:ss”
customer_id VARCHAR(32) 客户ID
approve_name VARCHAR(100) 审批人
approve_time VARCHAR(32) 审批时间,格式“yyyy-MM-dd HH:mm:ss”

# 新增费用对账单错误日志

请求方式: POST(HTTPS
请求地址: https://openapi.waiqin365.com/api/ksfreport/v1/saveExpenseError/{ openid }/{ timestamp }/{ digest }/{ msg_id } 在线调试 (opens new window)
请求包体:


{
    "customer_code": "CUS000004",
    "start_date": "2019-11-25",
    "error_reason": "客户不存在!"
}

请求信息

参数 类型 必填 说明
customer_code VARCHAR(32) 客户编码
start_date VARCHAR(32) 开始日期,格式“yyyy-MM-dd”
error_reason VARCHAR(100) 错误原因
error_status VARCHAR(32) 错误状态

返回结果:

{
    "msg_id": "PRD00001",
    "return_code": 0
}

异常结果:

{
    "msg_id": "PRD00001",
    "return_code": 100608,
    "return_msg": "错误原因不能为空"
}

响应信息

参数 类型 必填 说明
msg_id VARCHAR(32) 消息ID
return_code VARCHAR(32) 响应编码:0成功 1失败
return_msg VARCHAR(100) 响应说明

# 推送通知重新同步部分客户指定日期的费用对账单

接口是推送模式,把客户编码和日期推送到外部系统,外部系统处理以后再调用费用对账单保存接口保存对账单信息,推送接口仍然遵循标准“推送接口格式规范”

请求方式: POST(HTTPS
请求地址: 第三方服务接口URL

请求参数:

参数名称 参数值
msgId 消息ID
dataId 数据ID
dataVersion 接口数据版本,如:001
dataFormat 数据格式:json
dataSource 数据来源,取值范围:biz:业务功能产生;api:开放接口产生
timestamp 请求时间戳,如:1503276678552
status 数据同步状态,0-数据首次同步 2-数据失败同步
statusTime 上次同步失败时间,格式:yyyy-MM-dd HH:mm:ss
tenantId 企业ID,各注册企业在外勤365中对应的唯一ID
digest 数据签名,md5(data|pushsecret|timestamp)
dataType ksf_expense
data <<请求数据体>> , 说明:格式为JSON格式数据

请求数据体:

{
"customer_code": "cus001,cus002",
 "start_date": "2020-01-01",
 "end_date": "2020-01-31"
}

参数说明:

参数 类型 必填 说明
customer_code text 客户编码,多个客户编码以英文逗号分隔
start_date VARCHAR(100) 对账单开始日期,格式:yyyy-mm-dd
end_date VARCHAR(100) 对账单结束日期,格式:yyyy-mm-dd

# 查询货款对账单

请求方式: POST(HTTPS
请求地址: https://openapi.waiqin365.com/api/ksfreport/v1/queryStatement/{ openid }/{ timestamp }/{ digest }/{ msg_id } 在线调试 (opens new window)
请求包体:


{
    "trade_month": "2019-10"
}

请求信息

参数 类型 必填 说明
customer_code VARCHAR(100) 客户编码
trade_month VARCHAR(32) 对账月份格式“yyyy-MM”
page_number VARCHAR(32) 页数

返回结果:

{
"msg_id":"ORG00001",
"return_code":0,
"response_data":"[{
	"statement_id":"7628813591021350683",
	"serial_no":"FYBJBL8152904002201904",
	"customer_code":"8152904002",
	"customer_name":"门店1",
	"start_date":"2018-03-15",
	"end_date":"2018-03-15",
	"last_person":"张三",
	"last_date":"",
	"statement_status":"已确认",
	"customer_id":"1111122",
	"modify_time":"2018-03-15 19:06:06",
	"approve_name":"李四",
	"approve_time":""
}]"
}

异常结果:

{
    "msg_id": "PRD00001",
    "return_code": 1,
    "return_msg": "对账月份不能为空!"
}

响应信息

参数 类型 必填 说明
statement_id VARCHAR(32) 外勤对账单id
serial_no VARCHAR(32) 对账单号
customer_code VARCHAR(100) 客户编码
customer_name VARCHAR(100) 客户名称
start_date VARCHAR (32) 开始日期,格式“yyyy-MM-dd”
end_date VARCHAR (32) 结束日期,格式“yyyy-MM-dd”
last_person VARCHAR (100) 创建人
last_date VARCHAR (32) 创建时间,格式“yyyy-MM-dd HH:mm”
statement_status VARCHAR(32) 对账单状态
modify_time VARCHAR(32) 修改时间,格式“yyyy-MM-dd HH:mm:ss”
customer_id VARCHAR(32) 客户ID
approve_name VARCHAR(100) 审批人
approve_time VARCHAR(32) 审批时间,格式“yyyy-MM-dd HH:mm:ss”

# 新增货款对账单

请求方式: POST(HTTPS
请求地址: https://openapi.waiqin365.com/api/ksfStatement/v1/saveStatement/{ openid }/{ timestamp }/{ digest }/{ msg_id } 在线调试 (opens new window)
请求包体:


{
	"dept_code": "123",
	"customer_code": "CUS000029",
	"start_date": "2019-11-26",
	"serial_no": "hk002",
	"business_name": "南京",
	"business_addr": "广告园",
	"telphone": "15200000000",
	"begin_balance": "10",
	"end_date": "2019 - 11 - 28",
	"zjcsl": "10",
	"zqmye": "10",
	"zchje": "10",
	"zjkje": "10",
	"zchsl": "20",
	"zthsl": "20",
	"zthje": "20",
	"trade": [{
		"statement_no": "hk002",
		"serial_no": "1",
		"voucher_no": "pz11",
		"trade_desc": "12",
		"trade_amount": "100",
		"total_count": "50",
		"trade_date": "2019-11-26",
		"customer_code": "CUS000029",
		"start_date": "2019-11-26",
		"exts": [{
			"ext_key": "自定义",
			"ext_value": "好"
		}],
		"detail": [{
			"statement_no": "hk002",
			"serial_no": "1",
			"voucher_no": "pz11",
			"product_code": "pd001",
			"product_name": "商品",
			"amount": "10",
			"number": "1",
			"customer_code": "CUS000029",
			"start_date": "2019-11-26"
		}]
	}],
	"exts": [{
		"ext_key": "自定义1",
		"ext_value": "是"
	}]
}

请求信息

参数 类型 必填 说明
serial_no VARCHAR(32) 对账单号
customer_code VARCHAR(100) 客户编码
start_date VARCHAR(100) 开始日期,格式“yyyy-MM-dd”
end_date VARCHAR(100) 结束日期,格式“yyyy-MM-dd”
auto int 创建人
dept_code VARCHAR(100) 交易部门编码
dept_name VARCHAR(100) 交易部门名称
dept_source_code VARCHAR(100) 交易部门第三方系统唯一标志
business_name VARCHAR(100) 营业部
business_name VARCHAR(100) 营业部地址
telphone VARCHAR(100) 手机
begin_balance VARCHAR(32) 期初余额
zjkje VARCHAR(32) 本期缴款金额
zchje VARCHAR(32) 本期出货金额
zthje VARCHAR(32) 本期退货金额
zqmye VARCHAR(32) 期末余额
zchsl VARCHAR(32) 本期出货数量
zthsl VARCHAR(32) 本期退货数量
zjcsl VARCHAR(32) 本期出货净数量
trade 交易明细
trade[].statement_no VARCHAR(32) 对账单号,注:这个和主体中的serial_no对账单号是相同值
trade[].serial_no VARCHAR(32) 交易明细序号,注:只是顺序号
trade[].voucher_no VARCHAR(32) 交易明细凭证
trade[].trade_date VARCHAR(100) 交易明细交易日期,格式“yyyy-MM-dd”
trade[].trade_desc VARCHAR(32) 交易明细交易类型
trade[].trade_amount VARCHAR(32) 交易明细交易金额
trade[].total_count VARCHAR(32) 交易明细交易箱数
trade[].customer_code VARCHAR(32) 交易明细客户编码
trade[].start_date VARCHAR(32) 交易明细开始日期,格式“yyyy-MM-dd”
trade[].detail 单据明细
trade[].detail[].statement_no VARCHAR(32) 对账单号,注:这个和主体中的serial_no对账单号是相同值
trade[].detail[].serial_no VARCHAR(32) 序号,注:只是顺序号
trade[].detail[].voucher_no VARCHAR(32) 凭证,注:和trade[].voucher_no值相同
trade[].detail[].product_code VARCHAR(32) 商品编码
trade[].detail[].product_name VARCHAR(32) 商品名称
trade[].detail[].amount VARCHAR(32) 金额
trade[].detail[].number VARCHAR(32) 数量
trade[].detail[].customer_code VARCHAR(32) 客户编码
trade[].detail[].start_date VARCHAR(32) 开始日期,格式“yyyy-MM-dd”
trade[].exts 交易明细自定义字段
trade[].exts[].ext_key VARCHAR(32) 交易明细自定义字段名称
trade[].exts[]ext_value VARCHAR(32) 交易明细自定义字段值
exts 对账单自定义字段
exts[].ext_key VARCHAR(32) 自定义字段名称
exts[].ext_value VARCHAR(32) 自定义字段值

返回结果:

{
    "msg_id": "PRD00001",
    "return_code": 0
}

异常结果:

{
    "msg_id": "PRD00001",
    "return_code": 100608,
    "return_msg": "对账单号为空"
}

响应信息

参数 类型 必填 说明
msg_id VARCHAR(32) 消息ID
return_code VARCHAR(32) 响应编码:0成功 1失败
return_msg VARCHAR(100) 响应说明

# 新增货款对账单错误日志

请求方式: POST(HTTPS
请求地址: https://openapi.waiqin365.com/api/ksfStatement/v1/saveStatementError/{ openid }/{ timestamp }/{ digest }/{ msg_id } 在线调试 (opens new window)
请求包体:


{
    "customer_code": "CUS000004",
    "start_date": "2019-11-25",
    "error_reason": "客户不存在!"
}

请求信息

参数 类型 必填 说明
customer_code VARCHAR(32) 客户编码
start_date VARCHAR(32) 开始日期,格式“yyyy-MM-dd”
error_reason VARCHAR(100) 错误原因
error_status VARCHAR(32) 错误状态

返回结果:

{
    "msg_id": "PRD00001",
    "return_code": 0
}

异常结果:

{
    "msg_id": "PRD00001",
    "return_code": 100608,
    "return_msg": "错误原因不能为空"
}

响应信息

参数 类型 必填 说明
msg_id VARCHAR(32) 消息ID
return_code VARCHAR(32) 响应编码:0成功 1失败
return_msg VARCHAR(100) 响应说明

# 推送通知重新同步部分客户指定日期的货款对账单

接口是推送模式,把客户编码和日期推送到外部系统,外部系统处理以后再调用货款对账单保存接口保存对账单信息,推送接口仍然遵循标准“推送接口格式规范”

请求方式: POST(HTTPS
请求地址: 第三方服务接口URL

请求参数:

参数名称 参数值
msgId 消息ID
dataId 数据ID
dataVersion 接口数据版本,如:001
dataFormat 数据格式:json
dataSource 数据来源,取值范围:biz:业务功能产生;api:开放接口产生
timestamp 请求时间戳,如:1503276678552
status 数据同步状态,0-数据首次同步 2-数据失败同步
statusTime 上次同步失败时间,格式:yyyy-MM-dd HH:mm:ss
tenantId 企业ID,各注册企业在外勤365中对应的唯一ID
digest 数据签名,md5(data|pushsecret|timestamp)
dataType ksf_statement
data <<请求数据体>> , 说明:格式为JSON格式数据

请求数据体:

{
"customer_code": "cus001,cus002",
 "start_date": "2020-01-01",
 "end_date": "2020-01-31"
}

参数说明:

参数 类型 必填 说明
customer_code text 客户编码,多个客户编码以英文逗号分隔
start_date VARCHAR(100) 对账单开始日期,格式:yyyy-mm-dd
end_date VARCHAR(100) 对账单结束日期,格式:yyyy-mm-dd

# 查询对账单客户

注:货款和费用对账单配置的对账客户都是此接口返回的数据

请求方式: POST(HTTPS
请求地址: https://openapi.waiqin365.com/api/ksfStatement/v1/getCustomers/{ openid }/{ timestamp }/{ digest }/{ msg_id } 在线调试 (opens new window)
请求包体:

{ }

请求信息

参数 类型 必填 说明

返回结果:

{
"msg_id":"ORG00001",
"return_code":0,
"response_data":"[{
	"customer_code":"8152904002"	
}]"
}

响应信息

参数 类型 必填 说明
customer_code VARCHAR(100) 客户编码