数字货币APP-交易创建-服务商

大约 10 分钟

数字货币APP-交易创建-服务商

数字货币APP-交易创建

服务IDzjrcuoip.pay.uas.dc.app.trxcrt
VERSION1.0.0

服务详细描述

接入数字货币APP产品先调用该接口生成唤起地址,具体支付结果以支付结果通知为准。

注:参数中的必填要求:M为必填项,O为非必填项,C为条件选填项。

示例代码

uasDcAppTrxcrtDemoOp.java

/**
 * 数字货币APP-交易创建-服务商
 * 
 * @author
 */
@Service
public class uasDcAppTrxcrtDemoOp {

	@SuppressWarnings({ "rawtypes", "unchecked" })
	public static void execute() {
		// 1.获取通讯连接对象
		INetTools netTools = NetToolsHttpFactory.getHttpInstance();
		// 2.生成公共请求报文对象
		OipReqBean oipReqBean = new OipReqBean();
		// 设置应用id
		oipReqBean.setAppId("应用id");
		// 设置开发者id
		oipReqBean.setDlpId("开发者id");
		// 设置产品id
		oipReqBean.setProdId("产品id");
		// 设置api方法名
		oipReqBean.setMethod("zjrcuoip.pay.uas.dc.app.trxcrt");
		// 设置api版本
		oipReqBean.setVersion("1.0.0");
		// 设置时间戳
	    SimpleDateFormat sfs = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
	    oipReqBean.setTimestamp(sfs.format(new Date()));
		// 3.生成请求配置对象,配置请求地址/url等信息
		NetReqConfBean netReqConfBean = new NetReqConfBean();
		// 应用私钥
		netReqConfBean.setAppPrivateKey("应用私钥");
		// 请求地址
		netReqConfBean.setNetUrl("请求地址");
		// 开发者公钥
		netReqConfBean.setPublicKey("开发者公钥");
		// 设置业务报文
		Date d=new Date();
		SimpleDateFormat sf=new SimpleDateFormat("yyyyMMddHHmmss");
		//以map接收所有参数生成业务报文,主要是必输项,具体参考接口文档
		Map map =new HashMap();
        map.put("输入项必输字段", "字段值");
		String bizContent = JSON.toJSONString(map);
		// 生成业务报文json对象
		oipReqBean.setBizContent(bizContent);
		// 通讯获取报文对象
		OipRspBean oipRspBean = netTools.execute(oipReqBean, netReqConfBean);
		// 响应成功
		if (oipRspBean.isSuccess()) {
		    String bizJson = oipRspBean.getBizContent();
		    if (StringUtils.isNotBlank(bizJson)) {
				Map bizData = JSON.parseObject(bizJson, Map.class);
				System.out.println(bizData);
		    }
		}
	}

}

公共报文

[点击查看公共报文]

业务输入项

序号key中文名称是否必输类型长度说明
1mchSeq商户识别号MString32
2txId商户订单号MString3232个字符以内、只能包含字母、数字、下划线,需保证在商户端不重复。
3mrchOrderNo商户原始订单号OString64
4conScene消费场景MString3284:数字货币APP-交易创建-服务商
5txTp交易类型MString201-消费
6bizCgy业务类型MString4取值范围见<数据字典>中业务类型/业务种类枚举
7purpPrtry业务种类MString7取值范围见<数据字典>中业务类型/业务种类枚举
8wkUpTp拉起方式OString32拉起数币共建APP的方式 默认BT01-H5拉起,BT02-外部APP拉起
9txDtTm交易时间MDatetime14交易发起时间,格式yyyyMMddHHmmss
10validTime订单失效时间OString4订单失效时间,数值为整数,单位分,不得超过45分钟。
11amt交易金额MString15单位为元,精确到小数点后两位。
12ccy交易币种OString3默认CNY-人民币,指amt的币种
13subject订单标题MString256商品标题/交易标题/订单标题/订单关键字等。
14body订单描述OString128对交易或商品的描述
15prdDetail商品信息OMap订单包含的商品信息,详细字段见prdDetail说明。
16goodsTag订单优惠标记OString32代金券或立减优惠功能的参数。
17sceneInfo场景信息OString256用于上报场景信息
18areaCd区域信息MString6商户所在地地区信息,6位定长,精确到区县编码维度,与国家统计局一致。注:取值范围可参考《省市区结构说明》
19termId终端编号MString32商户终端设备号
20termInfo终端信息OMap商户侧受理终端信息。详见termInfo说明
21extendParams业务扩展参数OMap详细字段见extendParams说明。
22needReceipt电子发票功能OString1当用户使用微信支付时:0-不出现开票入口;1-支付成功消息和支付详情页将出现开票入口。 当用户使用银联支付时:0-不支持根据银行返回信息打印发票;此为缺省状态;1-可以根据银行返回信息打印发票,此时商户可以根据任意银行返回的发票信息出具增值税发票。
23redirectUrl跳转地址OString128支付成功后在支付结果页跳转的目标地址
24notifyUrl通知地址OString128商户接收异步通知的地址
25attach附加数据OString78附加数据,在通知和查询接口中原样返回,该字段主要用于携带自定义数据。如包含特殊字符需做Base64编码

prdDetail说明:

序号key中文名称是否必输类型长度说明
1costPrice订单原价OString91.商户侧一张小票订单可能被分多次支付,订单原价用于记录整张小票的交易金额。 2.当订单原价与支付金额不相等,则不享受优惠。 3.该字段主要用于防止同一张小票分多次支付,以享受多次优惠的情况,正常支付订单不必上传此参数。 单位为元,精确到小数点后两位。
2receiptId商品小票IDOString32商家小票ID
3goodsDetail单品列表MList单品信息,详细字段见goodsDetail说明。

goodsDetail说明:

序号key中文名称是否必输类型长度说明
1goodsId商品编号MString32商品编号
2wxGoodsId商品编码OString32微信侧商品编码
3aliGoodsId支付宝商品编码OString32支付宝定义的统一商品编号
4goodsName商品名称MString256商品的实际名称
5quantity商品数量MString10用户购买的数量
6price商品单价MString15单位为元,精确到小数点后两位
7goodsCgy商品类目OString24
8cgyTree商品类目树OString128从商品类目根节点到叶子节点的类目id组成,类目id值使用|分割
9body商品描述信息OString1000商品描述信息
10showUrl商品展示地址OString400商品展示地址

extendParams说明:

序号key中文名称是否必输类型长度说明
1sysServiceProviderId系统商编号OString64该参数作为系统商返佣数据提取的依据,请填写系统商签约协议的PID
2hbFqNum分期数OString32使用分期产品要进行的分期数
3hbFqSellerPercent手续费比例百分值OString3使用分期产品需要卖家承担的手续费比例的百分值,传入100代表100%
4industryRefluxInfo行业数据回流信息OString512{"scene_code":"me tro_tradeorder","channel":"xxxx","scene_data":{"asset_name":"ALIPAY"}}
5cardType卡类型OString32

termInfo说明:

序号key中文名称是否必输类型长度说明
1location终端实时经纬度信息OString32受理终端设备实时经纬度信息,格式为纬度/经度,+表示北纬、东经,-表示南纬、西经。
2ntwLcs终端入网认证编号OString5银行卡受理终端产品入网认证编号。该编号由“中国银联标识产品企业资质认证办公室”为通过入网认证的终端进行分配。 格式:5位字符,例如P3100
3devTp商户端设备类型MString2终端设备类型,受理方可参考终端注册时的设备类型填写,取值如下: 01:自动柜员机(含ATM和CDM)和多媒体自助终端 02:传统POS 03:mPOS 04:智能POS 05:II型固定电话 06:云闪付终端; 07:保留使用; 08:手机POS; 09:刷脸付终端; 10:条码支付受理终端; 11:条码支付辅助受理终端; 12:行业终端(公交、地址用于指定行业的终端); 13:MIS终端
4serlNm终端序列号CString50终端设备的硬件序列号,商户端设备类型(devTp)填写为 02、03、04、05、06、08、09 或 10时,必须填写终端序列号。
5devId终端设备号MString8终端设备号,收单机构为商户终端分配的唯一编号。
6appVer应用程序版本号OString8终端应用程序的版本号。应用程序变更应保证版本号不重复。当长度不足时,右补空格。
7devIp商户端设备IPCString40商户端终端设备IP地址。注:如经、纬度信息未上送,该字段必送。
8mblCtryCd移动国家代码OString3基站信息,由国际电联(ITU)统一分配的移动国家代码(MCC)
9mblNtNm移动网络号码OString2中国为460
10iccIdICCIDOString20基站信息,由国际电联(ITU)统一分配的移动网络号码(MNC)
11lctionCd1位置区域码1OString4移动:00、02、04、07; 联通:01、06、09; 电信:03、05、11
12lbsNum1基站编号1OString12SIM卡卡号
13lbsSgnl1基站信号1OString4LAC(移动、联通),16进制
14lctionCd2位置区域码2OString4CID(移动、联通),16进制
15lbsNum2基站编号2OString12SIG(移动、联通),16进制
16lbsSgnl2基站信号2OString4LAC(移动、联通),16进制
17lctionCd3位置区域码3OString4CID(移动、联通),16进制
18lbsNum3基站编号3OString12SIG(移动、联通),16进制
19lbsSgnl3基站信号3OString4LAC(移动、联通),16进制
20telSysId电信系统识别码OString4CID(移动、联通),16进制
21telNetId电信网络识别码OString4SIG(移动、联通),16进制
22telLbs电信基站OString4SID(电信),电信系统识别码,每个地级市只有一个SID
23telLbsSgnl电信基站信号OString4NID(电信),电信网络识别码,由电信各地级分公司分配。每个地级市可能有1到3个NID

业务输出项

序号key中文名称是否必输类型长度说明
1bizSts交易状态MString4指交易创建结果。02-交易成功,03-交易失败
2bizStsDesp交易状态描述MString255如:交易成功
3rjctRsnCd错误码OString32
4rjctRsn错误描述OString255

以下字段在bizSts为02-交易成功时有返回:

序号key中文名称是否必输类型长度说明
1txId商户订单号MString32请求的txId原样返回
2msgId交易流水号MString32
3amt交易金额MString15
4tnltxId通道交易号Mstring64
5payProd支付产品MString10JSAPI-JSAPI支付,NATIVE-扫码支付,APP-APP支付,H5-H5支付,DCEPH5PAY-H5拉起支付
6prepayId预支付交易会话标识MString128
7wkUpAddr唤起地址CString1000payProd为APP时有返回,此url是一个中间页地址,用于唤起共建APP