供应链服务

提供基础的商品查询、商品转链、推荐商品feed流查询、权益列表查询、统一的商品和权益发放服务。服务对接之前请先查看:服务调用必读须知

选品服务

根据客户场景实际需求,首先在江湖后台创建自定义商品池,然后通过服务获取这些商品信息。

  1. 进入"商品管理",点击"创建商品组"。
  2. 输入"商品组名称",例如:9,9包邮。
  3. 选择商品组类型:(二选一)
    • 自选: 挑选个别商品加入商品组。
    • 筛选: 按"规则"筛选出一些列商品,加入到商品组。
  4. 请选择商品组销售类型:(四选一)
    • 综合导购: 包含了京东热销商品、京东联盟、京东分期免息商品。
    • 京融服务: 金融优惠券、金融保险、金融财务等商品。
    • 京东联盟: 京东联盟推广商品。
    • 虚拟商品: 生活权益类商品(视频会员卡、充值卡、本地生活优惠券等)。
    • 注意说明: 只有“综合导购”支持商品组类型=筛选。

实物商品采买服务

实物商品采买主要面向企业客户,对商品所有权进行采购,商品来源主要是京东VOP商品,采用先进行预存款,然后通过服务对接方式进行交易的一种模式,相关服务请查看 企业采购

虚拟商品采买服务

通过API方式采买虚拟权益

1、文档说明

1.1、目标

本文档对上游买家商户的对接采买权益的详细说明,帮助商户方便快捷、安全的对接采买权益。

1.2、阅读对象

本文档的阅读对象是有权益采买的商户技术人员。

1.3、业务术语
描述
请求 以字符串形式把需要传输的数据发送给下游商户的过程。
返回 下游商户返回订单处理结果给京东金融权益平台的过程。

2、安全与开发规范

签名:是将请求串以及秘钥根据一定签名方法生成的签名值,用来防止传输过程中参数被篡改。包含 【url签名】、【业务参数签名】。

2.1、订单规范

  • 商户订单号:商户系统的订单号必须能够唯一标识一笔订单
  • 订单防重:对每一个订单,应有唯一的订单号,同一个订单号不能重复创建。

3、接口接入方式

3.1、HTTP POST请求规范

请求使用HTTPS POST的方式(application/json;charset=utf-8),使用UTF-8编码,返回的参数也使用JSON格式。

4、标准商户接口

4.1、sdk申请

江湖对于API接口采用公私钥加签验的方式保证通讯安全并提供相应的SDK。SDK已经对加签验逻辑做了封装,使用SDK可直接调用API。请联系江湖方获取。

4.2、公共响应码说明
resultCode resultMsg
0000 成功
其它 需要失败重试或联系管理员

4.3、【虚拟】权益商品下单接口

【描述】

此接口用于下单购买权益商品

请求url: https://api.jddglobal.com/smapi/v1/jdtx/createVirtualAssetOrder

请求方法:post

请求类型:application/json 响应类型:application/json

加密方式:NONE,RSA,ENV_RSA,3DES_RSA

签名方式:NONE,MD5_RSA,SHA256withRSA,SHA1withRSA

4.3.1. 请求公共参数

序号 参数 类型 位置 必填 描述
1 jrgw-request-time string header 必填 请求时间
2 jrgw-enterprise-user-id string header 必填 用户ID
3 jrgw-user-id-type string header 必填 用户ID类型
4 gw-encrypt-type string header 必填 加密方式
5 gw-sign-type string header 必填 签名方式
6 gw-sign string header 必填 签名
7 jrgw-env-key string header 非必填 请求信封

4.3.2. 请求业务参数

序号 参数 类型 位置 必填 描述
1 biz-content json body 必填 一级参数
1.1 jhShopId string body 必填 店铺id
1.2 businessNo string body 必填 商户订单号(由商户提供并保证唯一)
1.3 chargeAccount string body 非必填 直充账号(对于直充类权益商品,需提供此直充账号)
1.4 product object body 必填 商品信息
1.4.1 productCode string body 必填 商品编码(联系江湖侧获取)
1.4.2 quantity integer body 必填 商品数量

4.3.3. 响应公共参数

序号 参数 类型 位置 必填 描述
1 jrgw-resp-code string header 必填 返回码
2 jrgw-resp-msg string header 必填 返回码描述
3 jrgw-respond-time string header 必填 响应时间
4 jrgw-resp-env-key string header 非必填 响应信封
5 gw-encrypt-type string header 必填 加密方式
6 gw-sign-type string header 必填 签名方式
7 gw-sign string header 必填 签名

4.3.4. 响应业务参数

序号 参数 类型 位置 必填 描述
1 biz-content json body 必填 一级参数
1.1 resultCode string body 必填 业务返回码
1.2 resultMsg string body 非必填 业务返回信息
1.3 value object body 必填 订单数据
1.3.1 businessNo string body 必填 商户订单号
1.3.2 orderNo string body 必填 江湖订单号
1.3.3 orderAmount amount body 必填 订单金额
1.3.4 grantType string body 必填 履约类型('1':兑换码,'2':卡号/密码,'3':充值类)
1.3.5 chargeAccountType string body 非必填 直充账号类型('1':手机号,'2':邮箱账号,'3':腾讯QQ号,'4':其他账户)
1.3.6 chargeAccount string body 非必填 直充账号
1.3.7 product object body 必填 商品信息
1.3.7.1 productCode string body 必填 商品编码
1.3.7.2 productName string body 必填 商品名称
1.3.7.3 quantity integer body 必填 商品数量
1.3.7.4 salesPrice amount body 必填 销售价格
1.3.8 state integer body 必填 订单状态(0:失败,1:成功,2:进行中)

【返回demo】

{
  "resultCode": "0000",
  "resultMsg": "成功",
  "value": {
    "orderNo": "100000072459225",
    "orderAmount": 1.90,
    "businessNo": "150000742164013",
    "grantType": "1",
    "chargeAccountType": "3",
    "chargeAccount": "15600000000",
    "product": {
        "productCode": "150000742164013",
        "productName": "充值卡",
        "quantity": 1,
        "salesPrice": 1.90
    },
    "state": 1
  }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

4.4、【虚拟】权益商品订单查询接口

【描述】

此接口用于权益商品订单状态查询

【请求报文】

请求url: https://api.jddglobal.com/smapi/v1/jdtx/queryVirtualAssetOrder

请求方法:post

请求类型:application/json 响应类型:application/json

加密方式:NONE,RSA,ENV_RSA,3DES_RSA

签名方式:NONE,MD5_RSA,SHA256withRSA,SHA1withRSA

4.4.1. 请求公共参数

序号 参数 类型 位置 必填 描述
1 jrgw-request-time string header 必填 请求时间
2 jrgw-enterprise-user-id string header 必填 用户ID
3 jrgw-user-id-type string header 必填 用户ID类型
4 gw-encrypt-type string header 必填 加密方式
5 gw-sign-type string header 必填 签名方式
6 gw-sign string header 必填 签名
7 jrgw-env-key string header 非必填 请求信封

4.4.2. 请求业务参数

序号 参数 类型 位置 必填 描述
1 biz-content json body 必填 一级参数
1.1 jhShopId string body 必填 店铺id
1.2 businessNo string body 必填 商户订单号(由商户提供并保证唯一)

4.4.3. 响应公共参数

序号 参数 类型 位置 必填 描述
1 jrgw-resp-code string header 必填 返回码
2 jrgw-resp-msg string header 必填 返回码描述
3 jrgw-respond-time string header 必填 响应时间
4 jrgw-resp-env-key string header 非必填 响应信封
5 gw-encrypt-type string header 必填 加密方式
6 gw-sign-type string header 必填 签名方式
7 gw-sign string header 必填 签名

4.4.4. 响应业务参数

序号 参数 类型 位置 必填 描述
1 biz-content json body 必填 一级参数
1.1 resultCode string body 必填 业务返回码
1.2 resultMsg string body 非必填 业务返回信息
1.3 value object body 必填 订单数据
1.3.1 businessNo string body 必填 商户订单号
1.3.2 grantType string body 必填 履约类型('1':兑换码,'2':卡号/密码,'3':充值类)
1.3.3 chargeAccountType string body 非必填 直充账号类型('1':手机号,'2':邮箱账号,'3':腾讯QQ号,'4':其他账户)
1.3.4 chargeAccount string body 非必填 直充账号
1.3.5 assetProductInfo string body 非必填 卡密信息(对于卡密类和兑换码类有该属性)
1.3.6 state integer body 必填 订单状态(0:失败,1:成功,2:进行中)

assetProductInfo示例:

"[{"card":"aa","pwd":"123","expire":"2025-12-12 12:12:12"}]"

对于卡密类,card表示卡号,pwd表示密码,expire表示失效日期

对于兑换码类,card表示兑换码,expire表示失效日期

【返回demo】

{
  "resultCode": "0000",
  "resultMsg": "成功",
  "value": {
    "assetProductInfo": "[{\"expire\":\"2025-12-12 12:12:12\",\"pwd\":\"pwd-f7684af1-3222-432d-92cd-6671aae83c98\",\"card\":\"card-95110d2b-4471-4ae7-9571-587fd7036af0\"}]",
    "businessNo": "150000742164013",
    "grantType": "2",
    "chargeAccountType": "1",
    "chargeAccount": "15600000000",
    "state": 1
  }
}
1
2
3
4
5
6
7
8
9
10
11
12

4.5、【虚拟】权益商品库存查询接口

【描述】

此接口用于查询权益库存查询

【请求报文】

请求url: https://daas.jd.com/jrasset/querySkuInv

请求方法:post

请求参数:公共参数+业务参数

业务参数如下:

参数名称 类型 可否必填 备注
firstAccountId String 企业站一级商户号
skuList List<Long> 可支持批量SKU查询或者单个SKU查询

【返回报文】

报文内容:公共响应参数+业务响应参数

业务响应参数:data

AssetOutInvResp 参数:

参数名称 类型 可否必填 备注
sku Long 权益sku
availableInv Integer 可用库存量

【返回demo】

{
    "code":"00000000",
    "message":"响应成功",
    "result":"{"code":"0","msg":"success","data":"[{\"sku\":500000261,\"availableInv\":938}]"}"
}
1
2
3
4
5

4.3、【虚拟】SKU下单发放接口

【描述】

此接口用于根据sku自动创建订单且发放

【请求报文】

请求url: https://daas.jd.com/jrasset/skuGrant

请求方法:post

请求参数:公共参数+业务参数

业务参数如下:

参数名称 类型 可否必填 备注
sku long 商品sku
sourceSerNo String 唯一标识 (调用方生成 ,规则:$约定一个开头前缀 例:buyer01-000001010100),最大长度100
tel String 手机号
pin String 直充账号
address String 收货人地址
firstAccountId String 企业站一级商户号
secondAccountId String 企业站二级商户号
assetAmount String 商品单价,可以不填写

【返回报文】

报文内容:公共响应参数+业务响应参数

业务响应参数:

参数名称 类型 可否必填 备注
sku Long 权益商品SKU
sourceSerNo String 唯一标识
orderNo String 主订单号
orderAmount BigDecimal 订单金额
skuGrantType Integer sku发放类型:1直充pin2发放兑换码3地址发放
state Integer 最终状态,可以根据该字段判断发放状态成功失败。成功1、失败0、处理中2,如果是处理中的需要再次调用查询接口

【返回demo】

{
    "code":"00000000",
    "message":"响应成功",
    "result":"{"code":"0","msg":null,"data":"{\"sku\":500000261,\"orderSource\":\"jrassetmall\",\"sourceSerNo\":\"20200702-skuGrant-test-01\",\"orderNo\":\"AO-20200702183809-41950\",\"orderState\":3,\"orderAmount\":1.50,\"skuGrantType\":2,\"buyerServiceFeeTotalAmount\":0.00,\"state\":2}"}"
}
1
2
3
4
5

4.4、【虚拟】SKU发放结果查询

【描述】

此接口用于根据sku以及流水号查询订单创建发放结果

【请求报文】

请求url: https://daas.jd.com/jrasset/skuGrantStates

请求方法:post

请求参数:公共参数+业务参数

业务参数如下:

参数名称 类型 可否必填 备注
sku long 商品sku
sourceSerNo String 唯一标识
firstAccountId String 一级商户号

【返回报文】

报文内容:公共响应参数+业务响应参数

业务响应参数:

参数名称 类型 可否必填 备注
sku Long 权益商品SKU
assetName String 权益名称
orderSource String 上游app
sourceSerNo String 唯一标识
orderNo String 主订单号
orderAmount BigDecimal 订单金额
grantState Integer 发放状态0失败1成功2发奖中
message String 发奖失败信息
assetGrantSerNo String 权益平台发放流水号
skuGrantType Integer sku发放类型:1直充pin2发放兑换码3地址发放
cardCodeAndPwdJson String skuGrantType==2时,返回卡密信息,兑换码格式:{"cardCode":"cdKey"},卡密格式:{"cardCode":"card123","cardPwd":"pwd123"}
downstreamSerialNo String 权益平台下游流水号,该字段只对于特定的商户有用
state Integer 最终状态,可以根据该字段判断发放状态成功失败。成功1、失败0、处理中2,如果是处理中的需要再次调用查询接口

【返回demo】

{
    "code":"00000000",
    "message":"响应成功",
    "result":"{"code":"0","msg":null,"data":"{\"sku\":500000261,\"assetName\":\"自营\",\"orderSource\":\"jrassetmall\",\"sourceSerNo\":\"20200702-skuGrant-test-01\",\"orderNo\":\"AO-20200702183809-41950\",\"orderState\":3,\"orderAmount\":1.50,\"grantState\":1,\"message\":null,\"assetGrantSerNo\":\"AG-200702-42616-41\",\"skuGrantType\":2,\"cardCodeAndPwdJson\":\"{\\\"cardCode\\\":\\\"400001141#card61\\\",\\\"cardPwd\\\":\\\"400001141#pwd61\\\"}\",\"downstreamSerialNo\":\"AU-93de1968-8860-4739-892c-9b50586952ec\",\"state\":1}"}"
}
1
2
3
4
5

商品代发服务

针对渠道利用自有的用户运营营销工具,用户通过一定的门槛达到目标的奖励发放,包括给特定用户发放实物及虚拟的商品,促进用户激励,适合对接这个统一发奖服务。

1.商户获取授权token

接口描述:商家获取授权token服务

接口地址:https://ms.jr.jd.com/gw/generic/zc/h5/m/getMerchantAuthToken

【请求参数】

序号 字段 字段说明 类型 必填 说明
1 merchantCode 商户编号 String Y 江湖分配的商户id
2 version 版本 String Y 版本号,默认为1.0

【返回参数】

序号 字段 字段说明 类型 必填 说明
1 code 响应码 String Y 错误码
</brSUCCESS(>SUCCESS("00000", "成功"),
SYSTEM_ERROR("10000", "系统错误"),
UNAUTHORIZED("10100", "权限不足"),
PARAM_ERROR("10200", "请求参数错误"),
PARAM_NOT_NULL("10201", "参数必填"),
PARAM_NOT_SUPPORT("10502", "不支持的参数")
2 msg 响应信息 String Y 错误信息
3 status 是否调用成功 boolean Y true:接口调用成功,false:接口调用失败
4 data 返回数据 Map N 结构体

【data】

序号 字段 字段说明 字段类型 说明
1 token 授权token String 授权token

【例子】 请求:

    {
        "merchantCode": "123456789"
    }
1
2
3

响应:

{ 
	"resultCode": 0, 
	"resultMsg": "操作成功", 
	"resultData": { 
		"data": { "token": "a9013f8187a04561a60155358167993d" }, 
		"code": "00000", 
		"msg": "成功", 
		"status": true 
	}, 
	"channelEncrypt": 0 
}
1
2
3
4
5
6
7
8
9
10
11

2.商品代发接口

接口描述:给商户的用户代发商品的服务

接口地址:https://ms.jr.jd.com/gw/generic/zc/h5/m/rewardMerchantSku

【请求参数】

序号 字段 字段说明 类型 必填 说明
1 activityCode 活动编号 String Y 江湖发奖后台配置的活动编号
2 merchantCode 商户编号 String Y 江湖分配的商户id
3 sku 商品编号 String Y 江湖后台创建的商品编号
4 customerNo 用户唯一标识 String Y 商户方的唯一用户标识
5 custType 用户类型 Integer Y 0:非pin,1:Jdpin, 默认为0
6 deviceInfoDto 风控设备参数 DeviceInfoDto N 风控设备参数
7 extMap 额外参数 Map N 预留参数
8 version 版本 String Y 版本号,默认为1.0
9 sign 签名 String Y 依据merchantCode+""+activityCode+""+sku+""+customerNo+""+token进行数据拼接,进行md5加密拼成

【返回参数】

序号 字段 字段说明 类型 必填 说明
1 code 响应码 String Y 错误码
</brSUCCESS(>SUCCESS("00000", "成功"),
SYSTEM_ERROR("10000", "系统错误"),
PARAM_ERROR("10200", "请求参数错误"),
PARAM_NOT_NULL("10201", "参数必填"),
PARAM_NOT_SUPPORT("10502", "不支持的参数"),
REJECT_TOKEN("10101", "token校验不通过"),
REWARD_FAILD("20000", "发奖失败")
2 msg 响应信息 String Y 错误信息
3 status 是否调用成功 boolean Y true:接口调用成功,false:接口调用失败
4 data 返回数据 Map N 结构体

【data】

序号 字段 字段说明 字段类型 说明
1 sku 商品编号 String
2 skuName 商品名称 String
3 skuDesc 商品描述 String
4 skuImageUrl 商品图片地址 String
5 skuStart 商品开始时间 Date
6 skuEnd 商品结束时间 Date
7 activityCode 活动编号 String
8 activityStart 活动开始时间 Date
9 activityEnd 活动结束时间 Date
10 customerNo 用户唯一标识 String
11 custType 用户类型 Integer
12 couponNo 券码 String 优惠券码

【例子】 请求:

    {
        "merchantCode":"123456789",
        "activityCode":"63b6b641efca4896a81f81c5cfeb7767",
        "sku":"123456789",
        "customerNo":"dengjiang",
        "sign":"79d059718d41656cc568df52190b8fff"
    }
1
2
3
4
5
6
7

响应:

    {
        "resultCode":0,
        "resultMsg":"操作成功",
        "signature":null,
        "resultData":{
            "msg":"成功",
            "code":"00000",
            "data":{
                "skuDes":"测试商品描述",
                "skuImageUrl":"http://123.jd.com",
                "activityStart":1591286400000,
                "activityName":"数字营销发奖活动测试",
                "skuEnd":1593532800000,
                "couponNo":"64ca2e137e894a50936e0e89dcc27ec2",
                "skuName":"测试商品",
                "activityCode":"63b6b641efca4896a81f81c5cfeb7767",
                "skuStart":1591200000000,
                "custType":0,
                "sku":"123456789",
                "customerNo":"dengjiang",
                "activityEnd":1592582400000,
                "status":1
            },
            "status":true
        },
        "success":null,
        "channelEncrypt":0
    }
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
最后更新: 7/19/2021, 8:40:09 PM