Skip to main content

健康开普勒商城API

简介:API模式是合作方开发自己的商城页面,用户在合作方完成购买后,通过API接口的形式将商品单数据同步至京东,由京东进行购物履约。#

合作方获取京东侧的商品信息,价格以及库存以后,自行开发页面。用户选择商品\药品,填写地址,购物\药人相关信息以后通过京东侧预结算接口校验,并渲染合作方自己的预结算页面,用户操作提单后,合作方将订单数据通过结算接口同步至京东侧。提单后,京东侧会将单据的状态信息,拆单信息,物流信息,发票信息等通过合作方提供的接口地址回传给合作方,从而完成整个购药流程。

接入流程说明:#

  1. 合作方获取商品信息,库存信息,判断是否可以购药;合作方通过自行开发的页面收集提单信息包含商品\药品,用药人,收货地址等,调用京东侧预结算页面,返回预结算相关信息,包含价格运费等信息;用户在合作方页面提交购药单同步至京东,京东侧返回京东侧购药单号;提单成功后通过状态同步接口同步支付状态到京东侧;通过取消接口告知用户取消订单,京东侧会返回取消状态,成功,失败,取消中等,若返回取消成功,合作方给用户退款,退款完成通过状态同步京东是否退款成功;京东侧在提单后的各个环境会通过合作方提供的URL地址将订单拆单,状态变更,物流等信息同步至合作方;合作方可以申请开具发票,京东侧开局发票后通过合作方URL将开具的发票信息同步给合作方。
  2. 图中的接口需要双方业务沟通具体对接细节决定是否使用,例如业务中不涉及到拆单,则不需要接入拆单通知,不需要发票,则不需要调用申请以及接收发票等。
  3. 调用京东侧统一走宙斯使用标准接口,通知或者查询合作方的接口需要合作方提供URL地址,京东侧会在各个节点调用合作方的接口进行数据同步。

接入流程图示:#

Image text

一.合作方调用京东侧方向#

1.1 商品模块#

1.1.1 分页查询京东商品列表#

1.1.2 查询京东商品详情#

1.1.3 批量查询京东商品库存状态#

1.1.4 药品商品搜索#

1.2 订单模块#

1.2.1 京东预结单#

1.2.2 提交京东订单#

1.2.3 三方订单状态同步#

1.2.4 申请开具京东发票#

1.2.5 申请取消京东订单#

1.2.6 分页查询京东订单列表#

1.2.7 查询京东订单详情#

1.2.8 查看京东订单物流详情#

1.2.9 服务订单未使用申请退款#

1.3 体检模块#

1.3.1 根据skuId查询可预约门店列表#

1.3.2 查询门店三级级联地址#

1.3.3 查询门店排期列表#

1.3.4 提交预约#

1.3.5 预约单信息查询#

1.3.6 修改预约时间#

1.3.7 取消预约#

1.3.8 查询体检报告url#

二.京东侧回调合作方方向#

2.1 京东订单发票同步#

入参参数:

参数名类型是否必传描述
orderIdStringY京东单号
invoiceMapY发票信息
sourceTimestampLongY源头消息处理时间戳

invoice

参数名类型描述
invoiceDateString发票日期 ,格式为 '1999-09-21'
invoiceCodeString发票代码
invoiceNoString发票号码
invoiceTypeInteger发票类型 1 电子,2 纸质
invoicePicString发票图片

出参参数: data中返回布尔类型值,此接口根据code=0000 && data=true 判定成功

{"response":{"code":"0000","errMsg":"","uuid":"1ded1b62-c60f-4e4f-9620-a78a16b8f284","data":true}}

2.2 京东订单拆单同步#

入参参数:

参数名类型是否必传描述
orderIdStringY京东单号
subOrderListList<Map>Y子单详情
sourceTimestampLongY源头消息处理时间戳

Map-subOrderList

参数名类型描述
subOrderIdString子单id
subOrderStatusString子单状态
totalPriceString子单总价t
subOrderSkuListList<Map>子单skulis

Map-subOrderSkuList

参数名类型描述
skuIdStringskuid
numInteger数量
skuNameStringskuid名称
totalPriceStringsku总价
skuPriceStringsku单价

出参参数: data中返回布尔类型值,此接口根据code=0000 && data=true 判定成功

{"response":{"code":"0000","errMsg":"","uuid":"1ded1b62-c60f-4e4f-9620-a78a16b8f284","data":true}}

2.3 京东订单状态变更同步#

入参参数:

参数名类型是否必传描述
orderIdStringY京东单号
orderStatusStringY订单状态(若为处方药订单,则包含处方药店审核状态)
operatorStringN操作人
operateDescStringN操作说明
operateTimeStringN操作时间 '2020-11-19 20:00:30'
sourceTimestampLongY源头消息处理时间戳

orderStatu枚举值 (订单枚举按英文走)

NEEDPAY("NEEDPAY", "待支付"),

PAYED("PAYED", "已支付"),

REFUND("REFUND","退款中"),

AUDIT_PASS("AUDIT_PASS", "审核通过"),

AUDIT_UNPASS("AUDIT_UNPASS", "审核不通过"),

ORDER_FINISH("ORDER_FINISH", "京东订单完成"),

CANCELED("CANCELED", "订单已取消");

出参参数: data中返回布尔类型值,此接口根据code=0000 && data=true 判定成功

{"response":{"code":"0000","errMsg":"","uuid":"1ded1b62-c60f-4e4f-9620-a78a16b8f284","data":true}}

2.4 京东反查三方订单接口#

入参参数:

参数名类型是否必传描述
orderIdStringY京东单号

出参参数: data中返回实体类型值,此接口根据code=0000 && data!=null 判定成功

{"response":{"code":"0000","errMsg":"","uuid":"1ded1b62-c60f-4e4f-9620-a78a16b8f284","data":<实体Map>}}

参数名类型描述
orderIdString京东单号
reasonString原因描述(退款、审核失败时,需提供该字段)
partnerOrderIdString合作方订单号
paySerialString支付流水号
partnerOrderStatusString合作方订单状态(PAYED(已支付)、REFUNDED(退款完成)REFUND_FAIL(退款失败)处方审核完成(处方药订单,需要接收该状态)

2.5 京东回传体检信息#

入参参数:

参数名类型是否必传描述
reqIdStringY请求唯一标识
projectIdLong项目id 15位数字
openIdString外部平台用户唯一标识
relationTypeString预约人类型 1-本人,2-亲属
appointmentIdString预约单号 取消后重新预约成功会继续推送 18位以内
appointTimeString预约时间 时间格式:yyyy-MM-dd
appointStatusint预约状态 3-预约成功,4-已到检,12-取消中13-取消预约,99-已出报告
storeNameString门店名称
skuNameString套餐名称
extendInfoString扩展信息 Json形式{“reportTime”:”报告生成时间”“checkTime”:”到检时间”,“bbcShopId”:”BBC商城ID”}
timestampString时间戳 时间格式:yyyy-MM-dd HH:mm:ss

出参参数: data中返回实体类型值,此接口根据code=0000 && data!=null 判定成功

{"response":{"code":"0000","errMsg":"","uuid":"1ded1b62-c60f-4e4f-9620-a78a16b8f284","data":<实体Map>}}

data:

参数名类型描述
msgString推送成功
codeString0000

2.6 服务订单售后退款消息通知#

入参参数:

参数名类型是否必传描述
orderIdStringY京东订单id
afsServiceIdStringY售后服务单ID
afsStatusStringY售后服务单状态,AUDIT("AUDIT", "待审核"),PROCESS("PROCESS", "处理中"),COMPLETE("COMPLETE", "已退款"),REJECT("REJECT", "已驳回");
rejectReasonStringY驳回原因
applyTimeStringY售后申请时间
finishTimeStringY售后完成时间

出参参数: data中返回实体类型值,此接口根据code=0000 && data!=null 判定成功

{"response":{"code":"0000","errMsg":"","uuid":"1ded1b62-c60f-4e4f-9620-a78a16b8f284","data":<实体Map>}}

data:

参数名类型描述
msgString推送成功
codeString0000

2.7 京东订单发货消息通知#

入参参数:

参数名类型是否必传描述
orderIdStringY京东订单id
notifyTimeDateY消息发送时间
waybillDTOListListY运单详情列表

waybillDTO详情:

参数名类型是否必传描述
carrierStringY承运人id
notifyTimeDateY消息发送时间
waybillCodeStringY货运单号
carrierNameStringY承运方名称

出参参数: data中返回实体类型值,此接口根据code=0000 && data!=null 判定成功

{"response":{"code":"0000","errMsg":"","uuid":"1ded1b62-c60f-4e4f-9620-a78a16b8f284","data":<实体Map>}}

data:

参数名类型描述
msgString推送成功
codeString0000