跳转到内容
返回官网

发起免密支付

发起免密支付,会自动判断是否开通了支付宝或者诚E赊的免密支付,并发起扣款。优先发起诚E赊自动扣款,如果失败,则尝试支付宝自动扣款。该接口目前返回错误码不详,在发起扣款失败后,建议重试3次,不要无限制重试。

一、请求参数

请求URL:

POST https://open.fw199.com/gateway/1688/fenxiao/trade/pay/protocolpay/preparepay

基础参数

参数名类型必须示例值说明
appidStringtrue32432143214214合作伙伴AppId
timestampStringtrue1633618722当前时间戳
seller_nickStringtrueb2b-16249611221688账号
signStringtrue999de41d862efaa6f1084ead3b3ba480如何计算生成见示例代码

业务参数

名称类型是否必须描述示例值
orderIdorderIdjava.lang.Longjava.lang.Long是是订单ID订单ID19384898231938489823
payChannelpayChannelStringString否否跨境宝支付传入kjpayV2跨境宝支付传入kjpayV2kjpayV2kjpayV2
payAmountpayAmountLongLong否否付款总金额,单位分付款总金额,单位分123123
opRequestIdopRequestIdStringString否否requestidrequestid134134134134134134

二、请求示例代码

Java

@Test
public void One688FenXiaoTradeProtocolPayPreparePay() throws Exception {
//业务参数
Map<String, String> data = new HashMap<String, String>();
data.put("appid", Config.AppId);
data.put("seller_nick", Config.AlibabaFenXiaoSellerNick);
Long timestamp = System.currentTimeMillis() / 1000;
data.put("timestamp", timestamp.toString());
data.put("opRequestId","20250328-001");
data.put("orderId","4281535369018969811");
data.put("payAmount","9800");
data.put("payChannel","ALIPAY");
data.put("sign", Utils.Sign(data, Config.AppSecret));
// 调用服务API
String response = doHttpRequest(Config.One688FenXiaoTradeProtocolPayPreparePayUrl, data);
}

三、返回结果

三(一)、成功的情况

{
"code": 0,
"message": "ok",
"data": {
"code": "0",
"message": "",
"success": true,
"result": {
"payChannel": "ALIPAY",
"paySuccess": true
}
},
"trace_id": ""
}

三(二)、失败的情况

{
"code": 0,
"message": "ok",
"data": {
"code": "500",
"message": "不是自己的订单",
"success": false
},
"trace_id": ""
}

说明: code为0表示成功,非0为失败,message会包含失败原因。 详细返回字段说明

名称类型描述示例值
payChannelString支付成功渠道Alipay
paySuccessBoolean支付是否成功,在超时的情况下,可能返回false但实际扣款成功的情况,需要查询订单实际支付状态true