# 印尼支付行为画像查询接口 ## 接口概览 | 接口 | 路径 | 说明 | |---|---|---| | V1 特征 | `POST /api/v1/fortispay/payment-feature` | 返回 V1 版 536 个特征字段(6 模块) | | V2 特征 | `POST /api/v1/fortispay/payment-feature-v2` | 返回 V2.2 版 606 个特征字段(6 模块,不含综合评分) | | V2 评分 | `POST /api/v1/fortispay/payment-feature-v2-score` | 返回 V2.2 版 15 个综合评分字段(overall_score 模块) | 三个接口调用**同一三方 API**,入参、缓存、日志相同,仅响应 `data.result` 字段过滤规则不同。 --- ## 公共信息 | 项目 | 说明 | |---|---| | 请求格式 | `application/json; charset=UTF-8` | | 响应格式 | `application/json` | ### 请求头部 | 参数 | 类型 | 必填 | 说明 | |---|---|---|---| | Content-Type | String | Y | `application/json` | | X-Request-Id | String | N | 网关请求唯一标识ID,用于全链路追踪,原样回显在响应头中 | | X-Language | String | N | 语言标识,传 `en` 返回英文结果,不传默认英文 | ### 响应头部 | 参数 | 类型 | 说明 | |---|---|---| | X-Request-Id | String | 回显请求头中的 X-Request-Id,未传则自动生成 32 位 UUID | | X-Session-Id | String | 三方服务返回的唯一会话标识(Fortispay responseId) | ### 请求体 | 字段 | 类型 | 必填 | 说明 | |---|---|---|---| | name | String | Y | 用户姓名 | | id_card | String | Y | 身份证号,支持明文或 MD5 密文 | | mobile | String | Y | 手机号(带国家码),支持明文或 MD5 密文 | | encrypt_algo | String | N | 加密算法。**不传**表示明文,服务端原样透传给三方;传入 `MD5` 表示已加密,直接透传 | ### 请求示例 ```json { "name": "ABCXYZ", "id_card": "3201190108990002", "mobile": "6285887456612" } ``` > id_card、mobile 传明文时无需传 encrypt_algo,服务端原样透传给三方。 ```json { "name": "ABCXYZ", "id_card": "cf0ab15098ab149e5273dd82f2c737e6", "mobile": "bd82af6340240c43175a80aedf7e6eef", "encrypt_algo": "MD5" } ``` > id_card、mobile 传密文时必须传 encrypt_algo="MD5"。 ### 错误响应 错误响应与三方接口响应保持相同结构,其中 `data` 中 `status=0`、`result=null`: ```json { "code": "503", "message": "External API unreachable after 1 attempts", "responseId": "a1b2c3d4e5f6789012345678abcdef01", "data": { "status": 0, "result": null } } ``` | HTTP状态码 | code | 说明 | |---|---|---| | 400 | 400 | 请求参数校验失败 | | 502 | 502 | 三方 API HTTP 错误 | | 503 | 503 | 三方 API 网络不可达 | | 500 | 500 | 服务内部未知异常 | --- ## 一、V1 特征接口 `POST /api/v1/fortispay/payment-feature` ### 响应说明 `data.result` 只保留 V1.xlsx 中的 536 个字段,6 个模块: | 模块 | 字段数 | 说明 | |---|---|---| | `app_behavior` | 90 | 申请行为变量 | | `loan_behavior` | 140 | 放款行为变量 | | `repay_behavior` | 150 | 还款行为变量 | | `time_structure` | 46 | 行为时间结构变量 | | `delinq_monitor` | 50 | 逾期行为监控 | | `flow_anomaly` | 60 | 资金流量异常监控变量 | ### 完整调用示例 ```bash curl -X POST http://{host}:{port}/api/v1/fortispay/payment-feature \ -H "Content-Type: application/json" \ -H "X-Request-Id: 9c6ccc0f3ad3886dfe56ed364b6dc3e8" \ -H "X-Language: en" \ -d '{ "name": "ABCXYZ", "id_card": "3201190108990002", "mobile": "6285887456612" }' ``` --- ## 二、V2 特征接口 `POST /api/v1/fortispay/payment-feature-v2` ### 响应说明 `data.result` 保留 V2.2.xlsx 中的 606 个特征字段(6 模块,不含综合评分): | 模块 | 字段数 | 相比 V1 新增 | |---|---|---| | `app_behavior` | 90 | — | | `loan_behavior` | 150 | +10(`credit_to_apply_rate_by_org_cnt_day*`) | | `repay_behavior` | 190 | +40(还款与放款/申请的交叉比率) | | `time_structure` | 46 | — | | `delinq_monitor` | 70 | +20(逾期与申请/还款的交叉比率) | | `flow_anomaly` | 60 | — | > 注意:比率类字段类型为 `float`(V1 中为 `Int`)。 ### 完整调用示例 ```bash curl -X POST http://{host}:{port}/api/v1/fortispay/payment-feature-v2 \ -H "Content-Type: application/json" \ -H "X-Request-Id: 9c6ccc0f3ad3886dfe56ed364b6dc3e8" \ -H "X-Language: en" \ -d '{ "name": "ABCXYZ", "id_card": "3201190108990002", "mobile": "6285887456612" }' ``` --- ## 三、V2 评分接口 `POST /api/v1/fortispay/payment-feature-v2-score` ### 响应说明 `data.result` 只保留 V2.2.xlsx 中 `overall_score` 模块的 15 个字段: | 字段 | 类型 | 说明 | |---|---|---| | `recent_risk_level_v1` ~ `v5` | Int | 申请人即时风险资质等级 V1~V5 | | `mid_risk_level_v1` ~ `v5` | Int | 申请人阶段风险资质等级 V1~V5 | | `long_risk_level_v1` ~ `v5` | Int | 申请人长效风险资质等级 V1~V5 | ### 成功响应示例 ```json { "code": "0", "message": "success", "responseId": "0b5a09b6ea7d77dbbbb92e05dc9744ad", "data": { "status": 1, "result": { "overall_score": { "recent_risk_level_v1": 7, "recent_risk_level_v2": 70, "recent_risk_level_v3": 8, "recent_risk_level_v4": 18, "recent_risk_level_v5": 35, "mid_risk_level_v1": 46, "mid_risk_level_v2": 47, "mid_risk_level_v3": 30, "mid_risk_level_v4": 87, "mid_risk_level_v5": 51, "long_risk_level_v1": 36, "long_risk_level_v2": 37, "long_risk_level_v3": 13, "long_risk_level_v4": 16, "long_risk_level_v5": 89 } } } } ``` ### 完整调用示例 ```bash curl -X POST http://{host}:{port}/api/v1/fortispay/payment-feature-v2-score \ -H "Content-Type: application/json" \ -H "X-Request-Id: 9c6ccc0f3ad3886dfe56ed364b6dc3e8" \ -H "X-Language: en" \ -d '{ "name": "ABCXYZ", "id_card": "3201190108990002", "mobile": "6285887456612" }' ``` --- ## 缓存说明 三个接口共享同一套缓存。缓存以原始三方响应存储,命中缓存后按接口版本过滤 `result` 字段返回。同一用户查询任意接口后,其他接口命中缓存均无需再次调用三方。