美文网首页
非车保险产品需求设计(保险公司对接)

非车保险产品需求设计(保险公司对接)

作者: 9995857 | 来源:发表于2018-03-05 10:11 被阅读0次

    全过程分为3部分,分别为购买流程,支付流程,承保流程

    用户购买流程:

    用户在融石页面选择保险产品,并点击参与活动,融石引导用户跳转到保险产品页面,用户填写投保信息进行报价后,保险代理将投保单号以及相关信息告知融石,融石创建订单,并返回全局流水号,保险代理引导用户到融石产品确认页,用户进行产品确认,并准备支付。


    支付流程

    融石引导用户进行支付,支付成功后,融石通知保险代理保单确认购买。


    承保流程

    保险代理进行承保,承保结果通知融石,承保通过,融石告知用户承保成功,承保拒绝,融石引导用户退款流程。


    接口方案

    传输方式

    HTTPS 传输 端口443
    Method:POST
    Content-Type:application/json
    Encoding:UTF-8

    鉴权方法

    HTTP头

    HTTP头名称 字段说明 样例
    timestamp 时间戳 1490259359789
    signature 签名字段 此字段为算法见下文
    名称 字段说明
    timestamp 13位时间戳,需要判断接收到的时间戳 是否在当前时间的前后30分钟,如果不是,将按照无效请求处理
    signature String temp = MD5(globalno + "I" + token.upper() + "I" + timestamp)
    globalno 全局流水号 : S2IDH2017032800001 固定位(S2I) + 渠道商(DH)+ 日期(20170328) + 最大10万(00001)
    token 令牌,双方各持有一个令牌,接收方将按照自己持有的令牌进行判断,发送方将使用要接收方的令牌进行签名。
    令牌在做签名的时候需要全大写。
    令牌使用时为提供服务方,用自己令牌做签名验证,而调用方,用对端令牌制作签名
    令牌持有方 令牌号 说明
    融石科技 RSXXXXXXXXXXXXXX 此项为配置项,在上线前统一修改,请勿写死在代码中
    保险代理 TAXXXXXXXXXXXXXX 此项为配置项,在上线前统一修改,请勿写死在代码中

    返回结构

    {statusCode:"000000",error:"错误信息",result:JSON}

    在statusCode 为000000时,说明业务成功返回,此时result为返回结果,为必填项。
    反之,说明业务失败返回,此时error为返回的错误信息,为必填项。


    以下为接口形式,里面所用的接口地址,将在上线部署时统一更换


    购买流程接口

    1. 保险产品页面
    融石——>保险代理
    http://www.insurance.com/insuremain.html
    time=1490259359789 为防止缓存
    randomno=XXXXXXXX:随机码
    backurl=http://callback.html: 回退地址
    backurl  需要 base64 encode  
    其他参数,保险代理可以自行确定
    
    http://www.insurance.com/insuremain.html?randomno=g3k2d3h5v4t3j1j&backurl=http://callback.html&time=1490259359789
    
    2. 创建订单信息
    保险代理——>融石
    https://www.rongstone.com/createorderinfo
    RequestBody:
    {
        globalno: "XXXXXXXXXXXXX",      //这里填写的就是randomno随机码(用这个做签名)
        orderno:"61232154354325234", //保险公司订单号
        name: "张德智",                     //姓名
        idcard:"140108198302213016",        //身份证号
        mobile:"15900127643",        //手机号码
        sumpre: "5242.58"                  //保险总费用
        begindate:"2018-03-03"        //生效日期
        enddate:"2019-03-02"           //终止日期
    }
    ResponseBody:
    {
        statusCode: "000000",           //成功返回 6个0
        error: "",                                    //错误信息
        result: "S2IDH2017032800001"       //返回全局流水号
    }
    
    3. 引导投保确认页
    保险代理——>融石
    http://www.rongstone.com/confirm.html
    time=1490259359789 为防止缓存
    randomno=XXXXXXXX:随机码
    reason=
    %E8%BD%A6%E8%BE%86%E4%BF%A1%E6%81%AF%E9%94%99%E8%AF%AF 这个是"投保信息错误"的URL编码
    
    投保成功调用如下
    http://www.rongstone.com/confirm.html?randomno=g3k2d3h5v4t3j1j&reason=&time=1490259359789
    
    投保失败调用如下 
    http://www.rongstone.com/confirm.html?randomno=g3k2d3h5v4t3j1j&reason=%E8%BD%A6%E8%BE%86%E4%BF%A1%E6%81%AF%E9%94%99%E8%AF%AF&time=1490259359789
    
    
    其他参数,保险代理可以自行确定
    

    支付流程接口

    4. 接收购买请求
    融石——>保险代理
    https://www.insurance.com/payrequest
    RequestBody:
    {
        globalno: "S2IDH2017032800001",     //全局流水号
        consumepayno:"12312312", //消费订单号
        consumepaytype:"alipay", //消费类型
        consumesumpre:"5242.58", //消费费用
    }
    ResponseBody:
    {
        statusCode: "000000",           //成功返回 6个0
        error: "",                      //错误信息
        result: "ok"                    //返回ok
    }
    

    承保流程接口

    5. 发送承保结果
    保险代理——>融石
    https://www.rongstone.com/receiveacceptanceresult
    RequestBody:
    {
        globalno: "S2IDH2017032800001", //全局流水号
        appno:"6703530136320170000695", //投保单号
        polno:"6703530136320170000695", //保单号 (承保失败  此项为空)
        result:"success",               //success 为承保成功,为fault 为承保失败
        reason:""                       //承保成功的时候 此项为空,payresult 承保失败的时候 此项为失败原因
    }
    ResponseBody:
    {
        statusCode: "000000",           //成功返回 6个0
        error: "",                      //错误信息
        result: "ok"                    //返回ok
    }
    

    如果承保失败,提供失败原因。方便用户后续操作后,可以重新购买车险

    6. 订单详情页面
    融石——>保险代理
    http://www.insurance.com/insureorder.html
    time=1490259359789 为防止缓存
    globalno=S2IDH2017032800001:全局流水号
    appno=6703530136320170000695:投保单号
    backurl=http://callback.html: 回退地址
    backurl  需要 base64 encode  
    
    
    http://www.insurance.com/insuremain.html?globalno=S2IDH2017032800001&appno=6703530136320170000695&backurl=http://callback.html&time= 1490259359789
    

    断链重发策略

    重发条件

    1、当调用接口时,timeout时长为:65秒
    2、返回的HTTP状态码 不是200 (此时需要记录日志)

    重发策略

    5秒、1分钟、5分钟,当需要重发时,将有3次重发机会,如果仍然不能正确返回(HTTP状态码为200)将进行报警处理,具体报警处理方式不做统一说明。

    签名相关说明

    1. 调用端 使用对端所属的Token进行签名。
    1. 服务端 使用自己所属的Token进行验签。
      例如 融石请求支付校验到保险代理,这里融石就是调用端,所以要用保险代理的Token进行签名发送给保险代理,而保险代理这个接口是服务端,所以要用自己的Token(保险代理)进行验签。

    服务器白名单

    1. 接口在做服务端时,被调用时,需要用对端的服务器白名单进行服务器验证,这里的白名单可以是列表,只有在列表中的服务器访问才能通过白名单验证。

    相关文章

      网友评论

          本文标题:非车保险产品需求设计(保险公司对接)

          本文链接:https://www.haomeiwen.com/subject/vbpffftx.html