跳到主要内容
版本:v2.0

主体上保金额统计

基于上保主体统计一段时间内上了多少保:按主体逐行返回「上保金额 + 保单数 + 覆盖人数 + 最后一次上保时间」,并给出区间合计。可只查单个主体,也可一次拿到全部主体的金额排名。

本接口只读——仅查询、不落库、不改动任何数据。适用于已开通保险对接的场景(按主体对账保费、统计上保规模);未涉及相关场景时可忽略。

POST/api/getOrgInsuranceMoney

核心语义​

  1. 统计维度是主体,不是营期:主体即上保时落库的投保主体(统一社会信用代码 org_id + 主体名称 org_name)。需要按营期看本期保费,请用 获取营期保险金额。
  2. 时间口径:按上保/出单时间过滤,区间为左闭右开 [starttime, endtime)。注意统计的是"这段时间内出的单",不是保期——保期起止日与出单时间是两回事,跨保期的保单按其出单时间归属区间。
  3. 有效保单口径(固定,不开放为入参):只统计成功出单且未退保的保单,并不计入支付类保单(与后台「保险配置」页主体列表的默认口径一致)。已退保的保单不计入金额。
  4. 统一保单去重:统一保单下多名营员共用同一个保单号、每条记录上的金额都是整团保费。若逐行相加,这一单的保费会被人数放大数倍。故本接口先按保单号去重(一张保单只计一次保费),再按主体汇总,与后台主体列表、开票统计口径一致,可直接对账。
  5. 主体入参二选一:org_id、org_name 任一传入即只统计该主体;都不传则返回全部主体(按金额倒序)。org_id 为统一社会信用代码,建议优先用它(精确匹配、更稳定);org_name 需与出单时落库的名称完全一致。
  6. 不参与统计的记录:未落主体信息的历史记录(主体为空)一律不计入;平台自有主体仅在 org_id/org_name 都未指定(即查全部主体)时被排除,显式指定某个主体就以入参为准。
  7. 工具接口契约:code 恒为 0;成功时 msg 为空、data 为结果对象;失败时 msg 非空、data 为空数组。业务成功与否以 msg 判定。

请求参数​

名称类型描述是否必填默认值备注
tokenString身份校验令牌必填-由 获取访问令牌 获得
starttimeString/Number区间起点(含)必填-支持秒级时间戳、Y-m-d、Y-m-d H:i:s
endtimeString/Number区间终点(不含)必填-写法同上;只给到日期(如 2026-11-04)时自动扩展为含当天,即统计到 2026-11-05 00:00:00 之前
org_idString主体统一社会信用代码选填不限精确匹配;空 = 全部主体
org_nameString主体名称选填不限精确匹配,需与出单时落库名称完全一致;空 = 不限
信息

时间戳也接受 13 位毫秒级(自动换算成秒),避免误传毫秒把区间撑到未来。

CURL​

V1​

curl --location --request POST 'https://open.xinduobang.cn/api/getOrgInsuranceMoney' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'token=YOUR_TOKEN' \
--data-urlencode 'starttime=2026-01-01' \
--data-urlencode 'endtime=2026-11-04' \
--data-urlencode 'org_id=91110105MA01XXXXXX'

V1(GET,参数写查询串)​

curl --location --request GET 'https://open.xinduobang.cn/api/getOrgInsuranceMoney?token=YOUR_TOKEN&starttime=2026-01-01&endtime=2026-11-04'

V2(appid 为 V2 版本)​

curl --location --request POST 'https://open.xinduobang.cn/api/getOrgInsuranceMoney' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--header 'X-Timestamp: 1770000000' \
--header 'X-Nonce: 3f9c1a7b2e6d4058' \
--header 'X-Signature: <computed_hmac_sha256>' \
--data-urlencode 'token=YOUR_TOKEN' \
--data-urlencode 'starttime=2026-01-01' \
--data-urlencode 'endtime=2026-11-04'
信息

V2 签名算法及 X-Signature 计算方式见 V2 接入示例。

成功响应​

不传 org_id/org_name 时,list 按主体拆成多行(按金额倒序);指定主体时只有一行。

{
"code": 0,
"msg": "",
"data": {
"list": [
{
"org_id": "91110105MA01XXXXXX",
"org_name": "某某教育科技有限公司",
"money": 6538.50,
"policy_count": 220,
"person_count": 42,
"last_insure_time": "2026-08-20 15:09:07"
},
{
"org_id": "91310115MA1KXXXXXX",
"org_name": "某某夏令营服务有限公司",
"money": 1280.00,
"policy_count": 32,
"person_count": 30,
"last_insure_time": "2026-07-11 10:22:41"
}
],
"total_money": 7818.50,
"total_policy_count": 252,
"total_person_count": 72,
"starttime": 1767196800,
"endtime": 1793808000,
"start_time": "2026-01-01 00:00:00",
"end_time": "2026-11-05 00:00:00"
}
}

响应字段说明​

键类型说明
listArray主体统计数组,按 money 倒序,每项一个主体;区间内无上保时为空数组
list[].org_idString主体统一社会信用代码
list[].org_nameString主体名称(出单时落库的名称)
list[].moneyNumber该主体区间内上保金额(按保单号去重后逐单累加,非逐行累加)
list[].policy_countNumber该主体区间内成功保单张数(保单号去重后的数量)
list[].person_countNumber该主体区间内覆盖营员人数(按营员去重)
list[].last_insure_timeString该主体区间内最后一次上保时间,Y-m-d H:i:s
total_moneyNumber各主体 money 之和
total_policy_countNumber各主体保单数之和
total_person_countNumber各主体覆盖人数之和(跨主体不做去重,同一营员挂在两个主体会各计一次,实际极少发生)
starttime / endtimeNumber解析后的区间,秒级时间戳,[starttime, endtime)
start_time / end_timeString同上,Y-m-d H:i:s 文本,便于人眼核对
信息

区间内无任何上保时:list 为空数组、total_* 均为 0、msg 仍为空(视为查询成功的空结果,不是失败)。

失败响应​

工具接口契约下 code 恒为 0,失败通过非空 msg 与空 data 标识。

{ "code": 0, "msg": "endtime必须大于starttime", "data": [] }
错误文案说明
starttime不能为空 / endtime不能为空参数缺失或为空串
starttime格式错误:xxx / endtime格式错误:xxx既不是时间戳也无法解析为日期
endtime必须大于starttime区间不合法(相等或倒置)

相关接口​

变更记录​

日期变更
2026-11-05新增接口:/api/getOrgInsuranceMoney(GET/POST:starttime、endtime 必填,org_id/org_name 选填),透传上游 /Tools/getOrgInsuranceMoney。按上保主体统计区间内上保金额:时间按出单时间取左闭右开区间(只给到日期时自动含当天,兼容秒/毫秒时间戳);只统计成功出单、未退保且非支付类的保单;统一保单按保单号去重后一保单只计一次保费(对齐后台主体列表与开票口径,避免整团保费被人数放大),覆盖人数单独按营员去重。返回 list[](org_id/org_name/money/policy_count/person_count/last_insure_time)、total_* 合计与解析后的区间。只读,不落库