搜索结果

×

搜索结果将在这里显示。

条码换取openid

接口说明

接口描述:商户通过该接口上送刷卡条码值, 换取到微信openId。

适用对象:普通商户 特约商户

请求URL:ttps://pay.yintongzaixian.com/api/pay/unifiedOrder

请求方式:POST

请求类型:application/json 或 application/x-www-form-urlencoded

请求参数

字段名 变量名 必填 类型 示例值 描述
商户号 mchNo String(64) M1621873433953 商户号
应用ID appId String(64) 60cc09bce4b0f1c0b83761c9 应用ID
条码数据 barCode String(60) 20160427210604000490 条码值
微信subAppId subAppId String(64) 20160427210604000490 微信公众号AppID,若传入则透传到三方支付
请求时间 reqTime long 1622016572190 请求接口时间,13位时间戳
接口版本 version String(3) 1.0 接口版本号,固定:1.0
签名 sign String(32) C380BEC2BFD727A4B6845133519F3AD6 签名值,详见签名算法
签名类型 signType String(32) MD5 签名类型,目前只支持MD5或RSA2方式

请求示例数据

{
  "barCode": "202106181104177050002",
  "sign": "46940C58B2F3AE426B77A297ABF4D31E",
  "signType": "MD5",
  "reqTime": "1624006009",
  "mchNo": "M1623984572",
  "version": "1.0"
}

返回参数

字段名 变量名 必填 类型 示例值 描述
返回状态 code int 0 0-处理成功,其他-处理有误,详见错误码
返回信息 msg String(128) 签名失败 具体错误原因,例如:签名失败、参数格式校验错误
签名信息 sign String(32) CCD9083A6DAD9A2DA9F668C3D4517A84 对data内数据签名,如data为空则不返回
返回数据 data String(512) {} 返回下单数据,json格式数据

data数据格式

字段名 变量名 必填 类型 示例值 描述
openId openId String 1002 openId
subOpenId subOpenId String 1002 subOpenId

返回示例数据

{
  "code": 0,
  "data": {
    "openId": '',
    "subOpenId": ''
  },
  "msg": "SUCCESS",
  "sign": "9548145EA12D0CD8C1628BCF44E19E0D"
}

SDK调用示例(Java):

JeepayClient jeepayClient = JeepayClient.getInstance(Jeepay.appId, Jeepay.apiKey, Jeepay.getApiBase());
QueryOpenIdByBarcodeRequest request = new QueryOpenIdByBarcodeRequest();
QueryOpenIdByBarcodeReqModel model = new QueryOpenIdByBarcodeReqModel();
model.setMchNo(Jeepay.mchNo);                           // 商户号
model.setAppId(jeepayClient.getAppId());                 // 应用ID

request.setBizModel(model);
try {
    QueryOpenIdByBarcodeResponse response = jeepayClient.execute(request);
    _log.info("验签结果:{}", response.checkSign(Jeepay.apiKey));
    if (response.isSuccess(Jeepay.apiKey)) {
        _log.info("data:{}", response.getData());
    } else {
        _log.info("请求失败:mchNo={}, msg={}", Jeepay.mchNo, response.getMsg());
    }
} catch (JeepayException e) {
    _log.error(e.getMessage());
}