创建支付交易--渠道与支付平台交互,获取支付token

[⬆] 创建支付交易--渠道与支付平台交互,获取支付token

post /pai/createPayOrder

注:创建订单请求内容为加密报文,报文格式内容:{"res_data": "加密内容"},使用支付平台公钥对报文明文进行加密,生成加密内容。

Request Parameters

newBaseData
名字 类型 描述 是否可选
version String(6) 服务版本号,填2;支付Sdk接入后,填写版本号:从2开始;需要写入其他值,需要和我们联系确认; N
platform String(10) 最终支付来源,即请求支付的商户(每个渠道)使用何种方式调用开放平台支付 H5/Online/Native SDK/Offline/Android/iOS N
request_id String(64) 请求信息标识,请求支付的商户(每个渠道)应保持唯一,即:前端发起的一笔支付交易请求流水,非全局的);不同渠道的这个id,可以重复的; N
out_user_id string(64) 连尚账户相关:union_id...uhid... 二选一可为空
guest_id string(64) 1.CP方给出的:openid ;用openid + unionid 在支付端进行 查询连尚统一账户信息:uhid;2.游客:传给定值:GUESTER 二选一不为空
client_user_id string(64) 1.游客时:游戏cp方必传该字段;2.cp方定义的用户id;其他接入渠道不是必传项 Y
service_name String(32) 服务名称,创建交易服务为:"CreatePayOrder" N
language Int 语言 填0=中文 N
merchant_id String(32) 支付平台商户(渠道)ID,第三方接入开放平台支付前向开放平台支付申请获得(支付平台配置的渠道号,比如:pay001:游戏渠道001) N
time_stamp String(14) 时间戳(请求时的时间),格式yyyyMMddHHmmss,如 2015年03月29号17点01分36秒 对应字符串为:20180329170136 N
compress_type String(2) 压缩类型:0(不压缩),1(gzip) N
newBizData
名字 类型 描述 是否可选
pay_type Int 支付方式,1=消费,2=预授权 ,0=退款(暂时人工介入退款) N
pay_way String(256) 限制用于支付的银行,如限制只是用浦发银行进行支付,可以限制支持多个银行支付,传递多个BrandID(BrandID:支付品牌ID,BrandName:支付品牌名称,bankID:支付行),使用逗号分割(CCB_kj,acbc_kj) N
settlement_id String(32) 结算方标识,向开放平台申请时获得 N
appid String(32) 游戏传 appid N
out_trade_id String(64) 外部订单号,第三方商户、各个渠道自己生成的订单标识,必须要唯一不能重复 N
coin_amount Decimal 代币金额:单位和币种关联,精确到小数点; ——改为整数 Y
coin_type String(50) 代币币种:lianshang coin 等等 Y
pay_amount Decimal 支付金额(单位为分) N
pay_currency String(6) 支付币种(默认人民币 CNY) N
product_subject String(1024) 商品列表,格式参考Demo(商品支付金额为分) N
notify_url String(128) 支付结果通知地址 N
merchant_url String(128) 支付平台支付返回(放弃支付,返回前一页)的商户(渠道)URL地址 N
callback_url String(128) 支付完成跳转地址(H5及Web需要传递对应地址) N
pay_expire Int 交易关闭时间,如在规定时间内没有支付成功,则交易将被关闭,单位是分钟 N
risk_extend String(1024) Json格式的风控需要信息内容,具体需要信息和风控确认后后续提供。(目前没有风控:风控值暂时设置为200以内:为中低风险,(有用支付宝的花呗);) Y
security_type String(6) Sign字段的签名方式 目前为RSA N
sign String(256) 商户签名,签名生规则见 签名、加密机制 章节 N
brand_model String(50) 新加项,用于后端统计机型信息 【2019-6-17】 Y

请求报文 Example

{"res_data": "加密内容"}

加密报文明文 Example

{
    "newBaseData": {
        "version": "001",
        "platform": "H5",
        "request_id": "000001",
        "out_user_id": "1084095900",
        "guest_id": "9999",

       "client_user_id": "ccccc",
        "service_name": "CreatePayOrder",
        "language": 0,
        "merchant_id": "yx001",

        "appid": "XXX",
        "time_stamp": "20180329170136",
        "compress_type": "0"
    },
    "newBizData":{
        "pay_type": 1,
        "pay_way": "CCB_kj,acbc_kj",
        "settlement_id": "lx0account0",
        "appid": "1001",
        "out_trade_id": "yxdd001",
        "coin_amount": 100,        
        "coin_type": "lianshang coin",
        "pay_amount": 200,        
        "pay_currency": "CNY",        
         "product_subject":[{
            "channel_goods_code": "yxzb01",
            "channel_goods_subject": "钓鱼达人",
            "channel_goods_desc": "钓鱼 达人游戏",
            "channel_goods_sum": "2",
            "channel_goods_price": "30",  //单位为分
            "channel_goods_img": "http://img.lianshang.corp/img/a.png",
            "rights_type":"A",
            "rights_price":"3"
        }, {
            "channel_goods_code": "yxzb02",
            "channel_goods_subject": "麻将",
            "channel_goods_desc": "单人麻将游戏",
            "channel_goods_sum": "1",
            "channel_goods_price": "300", //单位为分
            "channel_goods_img": "http://img.lianshang.corp/img/b.png",
            "rights_type":"B",
            "rights_price":"5"
        }],
        "notify_url": "http://pay.sdk.front.notify/",
        "merchant_url": "http://youxi.center",
        "callback_url": "http://pay.sdk.front.callback/",
        "pay_expire": 30,
        "risk_extend":"",
        "security_type": "RSA",         
        "sign": ""
        }
    }

Response Code

Status: 200 OK

Response Parameters

newBaseResponseData
名字 类型 描述 是否可选
version String(6) 服务版本号,填1;支付Sdk接入后,填写版本号:从2开始;需要写入值,需要和我们联系确认; N
platform String(10) 最终支付来源,即请求支付的商户(每个渠道)使用何种方式调用开放平台支付 H5/Online/Native SDK/Offline/Android/iOS N
request_id String(64) 请求信息标识,请求支付的商户(每个渠道)应保持唯一,即:前端发起的一笔支付交易请求流水,非全局的);不同渠道的这个id,可以重复的; N
out_user_id string(64) 连尚账户相关:union_id...uhid... 二选一可为空
guest_id string(64) 1.CP方给出的:openid ;用openid + unionid 在支付端进行 查询连尚统一账户信息:uhid;2.游客:传给定值:GUESTER 二选一不为空
client_user_id string(64) 1.游客时:游戏cp方必传该字段;2.cp方定义的用户id;其他接入渠道不是必传项 Y
service_name String(32) 服务名称,创建交易服务为:"CreatePayOrder" N
language Int 语言 填0=中文 N
merchant_id String(32) 支付平台商户(渠道)ID,第三方接入开放平台支付前向开放平台支付申请获得(支付平台配置的渠道号,比如:pay001:游戏渠道001) N
time_stamp String(14) 时间戳(请求时的时间),格式yyyyMMddHHmmss,如 2015年03月29号17点01分36秒 对应字符串为:20180329170136 N
compress_type String(2) 压缩类型:0(不压缩),1(gzip) N
newBizResponseData
名字 类型 描述 是否可选
result_code String(16) 返回结果 Success 为成功,其他请参见错误码信息 N
pay_token String(128) 支付凭证PayToken,在支付请求服务中使用,验证请求的合法有效性 N
wk_trade_id String(64) 后端保存支付请求ID——改成 wk_trade_id N
security_type String(6) Sign字段的签名方式 目前为RSA N
sign String(128) 开放平台签名,签名生规则见 签名、加密机制 章节 N

注: 响应报文签名规则:完整响应报文去除security_type和sign两个字段后的内容。

Response Example Body

{

    "newBaseResponseData": {
        "version": "001",
        "platform": "H5",
        "request_id": "000001",
        "out_user_id": "1084095900",
        "guest_id": "9999",      
        "client_user_id": "ccccc",
        "service_name": "CreatePayOrder",
        "language": 0,
        "merchant_id": "yx001",
        "appid": "XXX",
        "time_stamp": "20180329170336",
        "compress_type": "0"
    },

    "newBizResponseData":{        
        "result_code": "SUCCESS",
        "pay_token": "wogeiniyigetoken",
        "wk_trade_id": "1001",        
        "security_type": "RSA",         
        "sign": ""
        }
}