import com.chinaums.open.api.OpenApiCache;
import com.chinaums.open.api.OpenApiContext;
import com.chinaums.open.api.constants.ConfigBean;
import com.chinaums.open.api.internal.util.http.HttpTransport;
import java.util.UUID;
public class OpenApiSdkTest {
public static void main(String[] args) throws Exception{
String url = "/v6/poslink/transaction/pay";
//开发者ID
String appId = "平台分配";
//开发者秘钥
String appKey = "平台分配";
//实例化客户端
ConfigBean configBean = new ConfigBean();
OpenApiContext context = new OpenApiContext();
String request = "{\"merchantCode\":\"898340149000005\",
\"terminalCode\":\"00000001\",
\"transactionAmount\":\"1\",
\"transactionCurrencyCode\":\"156\",
\"merchantOrderId\":\"SO16497473287935135489683\",
\"merchantRemark\":\"003598测试-雁塔门店\",
\"payMode\":\"CODE_SCAN\",
\"payCode\":\"134524350966727175\",
\"deviceType\":\"02\",
\"systemTraceNum\":\"123456\",
\"goods\":\"[{\"goodsId\":\"001\",\"goodsName\":\"鸡蛋\",\"quantity\":\"10\",\"price\":\"1\",\"goodsCategory\":\"food meterial\",\"body\":\"two eggs\",\"discount\":\"\"}]\",
\"srcReserved\":\"\",
\"storeId\":\"01\",
\"limitCreditCard\":\"false\",
\"operatorId\":\"01\",
\"bizIdentifier\":\"\",
\"goodsTag\":\"\",
\"installmentFlag\":\"true\",
\"installmentNumber\":\"12\",
\"retCommParams\":\"{\"foodOrderType\":\"pre_order\",\"eduSchoolId\":\"01\",\"eduScene\":\"\",\"parkId\":\"\",\"vehicleNo\":\"\"}\",
\"transChnl\":\"\",
\"thirdPartyInstalSubsFlag\":\"\",
\"feeRatio\":\"\",
\"costSubsidy\":\"\",
\"subAppId\":\"\",
\"serialNum\":\"\",
\"encryptRandNum\":\"\",
\"secretText\":\"\",
\"appVersion\":\"\",
\"longitude\":\"-121.48352\",
\"latitude\":\"+31.221345\",
\"networkLicense\":\"P3100\",
\"ip\":\"172.20.11.089\",
\"name\":\"张*三\",
\"mobile\":\"131****3453\",
\"certType\":\"IDENTITY_CARD\",
\"certNo\":\"110101********9008\",
\"fixBuyer\":\"false\",
\"targetChnl\":\"\",
\"invocationMode\":\"\",
\"orderDesc\":\"\",
\"pwdEnc\":\"\",
\"pwdTransKeyEnc\":\"\",
\"creditFeeRatio\":\"\",
\"acctAmt\":\"\",
\"location\":\"BD09\",
\"discountCode\":\"\",
\"promoParams\":\"\",
\"presetPayTool\":\"{}\",
\"transparentFields\":\"{}\",
\"encryptData\":\"\"}";
context.setStartTime(System.currentTimeMillis());
context.setRequestId(UUID.randomUUID().toString().replace("-", ""));
context.setOpenServUrl(url.split("/v")[0].concat("/"));
context.setApiServiceUrl(url);
context.setVersion(url.split("/")[3]);
context.setAppId(appId);
context.setAppKey(appKey);
context.setConfigBean(configBean);
context.setServiceCode(url.split("/v")[1].substring(1));
OpenApiCache.getCurrentToken(context);
System.out.println(HttpTransport.getInstance().doPost(context, request));
}
}
<?php
require_once "../utils/Log.php";
require_once "../utils/Tools.php";
require_once "../DefaultOpenApiClient.php";
class DataRequest
{
public $url = "";
public $serviceCode = "";
public $apiVersion ="";
public $needToken = true;
public $needDataTag = false;
public $data;
function __construct($data, $url)
{
$this->data = $data;
$apiVersion = preg_split("/[/]+/s",$url)[2];
$this->apiVersion = $apiVersion;
$serviceCode = strstr($url,$apiVersion);
$this->url = strstr($url,"/".$apiVersion,true);
$this->serviceCode = preg_replace("/^" . preg_quote($apiVersion, "/") . "/", "", $serviceCode);
}
}
class DataDemo{
public function main(){
$appid = "平台分配";
$appkey = "平台分配";
$url = "/v6/poslink/transaction/pay";
$data = json_encode(array("merchantCode"=>"898340149000005",
"terminalCode"=>"00000001",
"transactionAmount"=>"1",
"transactionCurrencyCode"=>"156",
"merchantOrderId"=>"SO16497473287935135489683",
"merchantRemark"=>"003598测试-雁塔门店",
"payMode"=>"CODE_SCAN",
"payCode"=>"134524350966727175",
"deviceType"=>"02",
"systemTraceNum"=>"123456",
"goods"=>"json_encode(array([{"goodsId"=>"001","goodsName"=>"鸡蛋","quantity"=>"10","price"=>"1","goodsCategory"=>"food meterial","body"=>"two eggs","discount"=>""}]))",
"srcReserved"=>"",
"storeId"=>"01",
"limitCreditCard"=>"false",
"operatorId"=>"01",
"bizIdentifier"=>"",
"goodsTag"=>"",
"installmentFlag"=>"true",
"installmentNumber"=>"12",
"retCommParams"=>"{"foodOrderType"=>"pre_order","eduSchoolId"=>"01","eduScene"=>"","parkId"=>"","vehicleNo"=>""}",
"transChnl"=>"",
"thirdPartyInstalSubsFlag"=>"",
"feeRatio"=>"",
"costSubsidy"=>"",
"subAppId"=>"",
"serialNum"=>"",
"encryptRandNum"=>"",
"secretText"=>"",
"appVersion"=>"",
"longitude"=>"-121.48352",
"latitude"=>"+31.221345",
"networkLicense"=>"P3100",
"ip"=>"172.20.11.089",
"name"=>"张*三",
"mobile"=>"131****3453",
"certType"=>"IDENTITY_CARD",
"certNo"=>"110101********9008",
"fixBuyer"=>"false",
"targetChnl"=>"",
"invocationMode"=>"",
"orderDesc"=>"",
"pwdEnc"=>"",
"pwdTransKeyEnc"=>"",
"creditFeeRatio"=>"",
"acctAmt"=>"",
"location"=>"BD09",
"discountCode"=>"",
"promoParams"=>"",
"presetPayTool"=>"{}",
"transparentFields"=>"{}",
"encryptData"=>""));
$reqiest = new DataRequest($data,$url);
$client = new DefaultOpenApiClient();
$content = $client->execute($reqiest,$appid,$appkey);
$obj = json_decode($content);
print_r($obj->errCode);
print_r($obj->errInfo);
}
}
$p = new DataDemo();
$p->main();
?>
# -*- coding: utf-8 -*-
from webapi.DefaultOpenApiClient import DefaultOpenApiClient
url = "/v6/poslink/transaction/pay"
class DataRequest(object):
def __init__(self, data: dict) -> dict:
self.data = data
self.serviceCode = url[len(url.split("/v")[0])+len(url.split("/")[3])+1: len(url)]
self.apiVersion = url.split("/")[3]
self.needToken = True
self.needDataTag = True
appId="平台分配"
appKey="平台分配"
client = DefaultOpenApiClient(appId, appKey)
cls = DataRequest({\"merchantCode\":\"898340149000005\",
\"terminalCode\":\"00000001\",
\"transactionAmount\":\"1\",
\"transactionCurrencyCode\":\"156\",
\"merchantOrderId\":\"SO16497473287935135489683\",
\"merchantRemark\":\"003598测试-雁塔门店\",
\"payMode\":\"CODE_SCAN\",
\"payCode\":\"134524350966727175\",
\"deviceType\":\"02\",
\"systemTraceNum\":\"123456\",
\"goods\":\"[{\"goodsId\":\"001\",\"goodsName\":\"鸡蛋\",\"quantity\":\"10\",\"price\":\"1\",\"goodsCategory\":\"food meterial\",\"body\":\"two eggs\",\"discount\":\"\"}]\",
\"srcReserved\":\"\",
\"storeId\":\"01\",
\"limitCreditCard\":\"false\",
\"operatorId\":\"01\",
\"bizIdentifier\":\"\",
\"goodsTag\":\"\",
\"installmentFlag\":\"true\",
\"installmentNumber\":\"12\",
\"retCommParams\":\"{\"foodOrderType\":\"pre_order\",\"eduSchoolId\":\"01\",\"eduScene\":\"\",\"parkId\":\"\",\"vehicleNo\":\"\"}\",
\"transChnl\":\"\",
\"thirdPartyInstalSubsFlag\":\"\",
\"feeRatio\":\"\",
\"costSubsidy\":\"\",
\"subAppId\":\"\",
\"serialNum\":\"\",
\"encryptRandNum\":\"\",
\"secretText\":\"\",
\"appVersion\":\"\",
\"longitude\":\"-121.48352\",
\"latitude\":\"+31.221345\",
\"networkLicense\":\"P3100\",
\"ip\":\"172.20.11.089\",
\"name\":\"张*三\",
\"mobile\":\"131****3453\",
\"certType\":\"IDENTITY_CARD\",
\"certNo\":\"110101********9008\",
\"fixBuyer\":\"false\",
\"targetChnl\":\"\",
\"invocationMode\":\"\",
\"orderDesc\":\"\",
\"pwdEnc\":\"\",
\"pwdTransKeyEnc\":\"\",
\"creditFeeRatio\":\"\",
\"acctAmt\":\"\",
\"location\":\"BD09\",
\"discountCode\":\"\",
\"promoParams\":\"\",
\"presetPayTool\":\"{}\",
\"transparentFields\":\"{}\",
\"encryptData\":\"\"})
response = client.execute(cls)
print(str(response.get("data")))
print(response.get("errCode"))
print(response.get("errInfo"))
print(response.get("resultCode"))
print(response.get("resultInfo"))
支付
URL
- 生产环境:
POST
https://api-mop-wh.open.chinaums.com/v6/poslink/transaction/pay - 测试环境:
POST
https://test-api-open.chinaums.com/v6/poslink/transaction/pay
描述:进行POS通支付操作
ContentType:application/json
请求头
名称 | 必填 | 描述 | 示例值 |
---|---|---|---|
Authorization | 是 | 认证内容 (认证参考天满开发者中心->接入指引->平台认证方式:开发者中心) | OPEN-BODY-SIG AppId="****",Timestamp="20170606135700",Nonce="99930a147f5353dd8a8f29a5329f37e9",Signature="IPmdGHYCcfN+mto0/02zkwoUF1NT3YqPKaUykMaec1T=" |
请求参数
名称 | 类型 | 必填 | 最大长度 | 描述 | 示例值 |
---|---|---|---|---|---|
merchantCode | string | 是 | 15 | 商户号 | 898340149000005 |
terminalCode | string | 是 | 8 | 终端号 | 00000001 |
transactionAmount | number | 是 | 100000000 | 交易金额 单位:分 | 1 |
transactionCurrencyCode | string | 是 | - | 交易币种 | 156 |
merchantOrderId | string | 是 | 50 | 商户订单号 全局唯一,不可重复,长度不超过50位 | SO16497473287935135489683 |
merchantRemark | string | 是 | 50 | 商户备注 长度不超过50位 | 003598测试-雁塔门店 |
payMode | string | 是 | - | 支付方式 E_CASH – 电子现金 SOUNDWAVE – 声波 NFC – NFC CODE_SCAN – 扫码 MANUAL – 手输 FACE_SCAN – 扫脸 |
CODE_SCAN |
payCode | string | 是 | 512 | 支付码 | 134524350966727175 |
deviceType | string | 是 | 2 | 设备类型 长度为2,必传字段,且设备类型为 02、03、04、05、06、08、09 或 10时,必须送“终端硬件序列号”、“加密随机因子”、“硬件序列号密文数据”、“经度”、“纬度”, 该字段值需和终端注册的设备类型保持一致。取值说明:设备类型取值说明 | 02 |
systemTraceNum | string | 否 | 6 | 系统跟踪号 6位数字 | 123456 |
goods | array | 否 | 商品信息 最大长度6000位 | ||
goodsId | string | 是 | - | 商品ID 最大长度32位 | 001 |
goodsName | string | 是 | - | 商品名称 最大长度256位 | 鸡蛋 |
quantity | number | 是 | - | 商品数量 最大长度10位,为非0整数 | 10 |
price | number | 是 | - | 商品单价 最大长度12位,单位:分 | 1 |
goodsCategory | string | 否 | - | 商品分类 最大长度24位 | food meterial |
body | string | 否 | - | 商品说明 最大长度100位 | two eggs |
discount | number | 否 | - | 最大长度12位,单位:分 | |
srcReserved | string | 否 | 100 | 商户冗余信息 用于多种用途,如在特定支付渠道下,冗余信息将被渠道利用,长度不超过100位 | |
storeId | string | 否 | 32 | 门店号 | 01 |
limitCreditCard | boolean | 否 | - | 是否限制信用卡 | false |
operatorId | string | 否 | 28 | 操作员编号 | 01 |
bizIdentifier | string | 否 | 3 | 业务标识 标识接入的具体业务除非特殊说明,一般不需要上送 ZZH—准账户模式硬件钱包 |
|
goodsTag | string | 否 | 32 | 商品标识 | |
installmentFlag | string | 否 | 3 | 分期标志 分期必填,花呗分期:HBF | true |
installmentNumber | number | 否 | - | 分期期数 花呗分期期数(目前支持支付宝渠道) | 12 |
retCommParams | object | 否 | 返佣字段 目前支持支付宝渠道,最大长度255位 | ||
foodOrderType | string | 是 | - | 扫码点餐字段 pre_order | pre_order |
eduSchoolId | string | 否 | - | 学校内标或者校区ID 用于支付宝校园团餐场景。从支付宝学校库查询到到学校内标/校区ID,如果有校区ID则优先传校区ID。例如:2088000913220823-1 | 01 |
eduScene | string | 否 | - | 服务场景ID 用于支付宝校园内服务场景。教育行业定义的校园内服务场景。例如:校园团餐:SCHOOL_CANTEEN | |
parkId | string | 否 | 32 | 停车场ID,用于支付宝停车场活动 | |
vehicleNo | string | 否 | 32 | 车牌号,用于支付宝停车场活动 | |
transChnl | string | 否 | - | 交易渠道标识 1-收钱吧 | |
thirdPartyInstalSubsFlag | string | 否 | - | 第三方贴息启用和禁用参数 花呗分期使用 true:启用 false:禁用 如果第三方贴息活动为全场贴息,默认可贴息,传入“false”,则本笔交易禁用三方贴息; 如果第三方贴息活动为指定订单贴息,默认禁用贴息,传入“true”,则本笔交易启用三方贴息 |
|
feeRatio | string | 否 | - | 手续费比例 新悦融益业务 该字段必传 | |
costSubsidy | string | 否 | - | 确认成本补贴 新悦融益业务 该字段必传;是否成本补贴,true为不判断手续费比例,false按正常判断,默认false | |
subAppId | string | 否 | - | 子商户公众账号ID(微信) | |
serialNum | string | 否 | 50 | 条件必传,终端硬件序列号 长度⇐50,设备类型为 02、03、04、05、06、08、09 或 10时,必须填写“终端硬件序列号”,取值说明: 6位厂商编号+2位终端类型(同设备类型)+42位自定义序列号 | |
encryptRandNum | string | 否 | 10 | 条件必传,加密随机因子 长度⇐10,设备类型为 02、03、04、05、06、08、09 或 10时,必须填写“加密随机因子”,取值说明: 若付款码为19位数字,则取后6位;若付款码为EMV二维码, 则取其tag 57的卡号/token号的后6位 | |
secretText | string | 否 | 8 | 条件必传,硬件序列号密文数据 长度⇐8,设备类型为 02、03、04、05、06、08、09 或 10时,必须填写“硬件序列号密文数据”,取值说明: 64bit的密文数据,对终端硬件序列号和加密随机因子加密后的结果。本子域取值为:64bit 密文数据进行base64编码后的结果,加密方法详见《硬件序列号加密算法》 | |
appVersion | string | 否 | 8 | 应用程序版本号 长度为8,设备类型为 02、03、04、05、06、08、09 或 10时,选填“应用程序版本号”,取值说明: 终端应用程序的版本号。应用程序变更应保证 版本号不重复。当长度不足时,右补空格。 | |
longitude | string | 否 | - | 条件必传,经度 长度⇐10。 实体类终端(设备类型非01,11):经纬度必传; 非实体类终端(设备类型为01,11):经纬度与ip字段必传其一。 格式:1位正负号+3位整数+1位小数点+5位小数; 对于正负号:+表示东经,-表示西经。例如-121.48352 | -121.48352 |
latitude | string | 否 | - | 条件必传,纬度 长度⇐10。 实体类终端(设备类型非01,11):经纬度必传; 非实体类终端(设备类型为01,11):经纬度与ip字段必传其一。 | +31.221345 |
networkLicense | string | 否 | 5 | 入网认证编号 长度为5,编号由“中国银联标识产品企业资质认证办公室”为通过入网认证的终端进行分配 | P3100 |
ip | string | 否 | 64 | 条件必传,终端设备IP地址 长度⇐40。 非实体类终端(设备类型为01,11):如无经纬度,该字段必送;格式如:"ip":"172.20.11.089" | 172.20.11.089 |
name | string | 否 | 20 | 实名认证姓名 长度⇐20,付款人姓名(支付宝,微信指定支付人使用) | 张*三 |
mobile | string | 否 | 16 | 实名认证手机号 长度⇐16,付款人手机号(支付宝,微信指定支付人使用) | 131****3453 |
certType | string | 否 | 20 | 实名认证证件类型 长度⇐20,证件类型,微信支持身份证、支付宝支持身份证:IDENTITY_CARD、护照:PASSPORT、军官证:OFFICER_CARD、士兵证:SOLDIER_CARD、户口本:HOKOU | IDENTITY_CARD |
certNo | string | 否 | 20 | 实名认证证件号 长度⇐20,证件号码(与证件类型对应)(支付宝,微信指定支付人使用) | 110101****9008 |
fixBuyer | string | 否 | 2 | 是否需要实名认证 长度⇐2,是否强制校验身份(支付宝,微信指定支付人使用) T:验证 F: 不验证 | false |
targetChnl | string | 否 | - | 数字货币指定目标渠道 长度⇐10,仅限于数字货币使用 取值说明:中总行BOCHO、建行CCBP、工行ICBC | |
invocationMode | string | 否 | 10 | 调用方式 默认不传值,为等待支付流程完成才返回; POLL:轮询模式,即支付渠道响应后立即返回,若错误代码=PG,表明订单正在支付中,须使用查询接口确认订单状态,其余错误代码认为失败 | |
orderDesc | string | 否 | 100 | 订单描述 | |
pwdEnc | string | 否 | - | 密码(密文) 中行卡式软钱包(准账户模式钱包)交易必传,SM4加密,透传网付 | |
pwdTransKeyEnc | string | 否 | - | 密码传输加密秘钥(密文) | |
creditFeeRatio | string | 否 | - | 手续费(贷) | |
acctAmt | string | 否 | - | 青岛医保预付卡余额 | |
location | string | 否 | 10 | 坐标系 长度⇐10,BD09/GCJ02/WGS84 | BD09 |
discountCode | string | 否 | - | 优惠码 仅支持云闪付渠道 | |
promoParams | array |
否 | 优惠码附加参数 JSON格式 | ||
electrical_equipment_category | string | 是 | - | 优惠码 | GDYJDN |
presetPayTool | object | 否 | - | 卡通业务参数字段 JSON格式 | |
transparentFields | object | 否 | - | 银联冗余字段透传 JSON格式 | |
encryptData | string | 否 | - | 敏感信息加密信息上送,格式:(SM2公钥索引信息|密文数据) |
响应示例
{
"errCode":"00",
"errInfo":"10000成功响应码",
"transactionTime":"150241",
"transactionDate":"0719",
"transactionDateWithYear":"20230719",
"settlementDate":"0719",
"settlementDateWithYear":"20230719",
"retrievalRefNum":"29184510823W",
"transactionAmount":"7302",
"actualTransactionAmount":"7302",
"amount":"7302",
"orderId":"20230719150237029184510823",
"marketingAllianceDiscountInstruction":"微信钱包支付73.02元",
"thirdPartyDiscountInstruction":"微信钱包支付73.02元",
"thirdPartyName":"微信钱包",
"thirdPartyBuyerId":"otdJ_uIoiCwFwQ2ocseCtnDOpqjU",
"thirdPartyBuyerUserName":"otdJ_uIoiCwFwQ2ocseCtnDOpqjU",
"thirdPartyOrderId":"4200066286202307198238072004",
"thirdPartyPayInformation":"现金:7302",
"totalDiscountAmount":0,
"discountStatus":"",
"promotionList":
[
{
"channelName":"",
"discountId":"",
"eventNo":"",
"eventName":"",
"discountScope":"",
"discountType":"",
"eventDiscountAmount":0,
"platformDiscountAmount":0,
"merchantDiscountAmount":0,
"thirdPartyDiscountAmount":0,
"thirdPartyDiscountDetail":"",
"goodsList":
[
{
"goodsId":"",
"discountAmount":0,
"goodsNumber":0,
"goodsPrice":0,
"goodsRemark":""
}
]
}
],
"rawPromotionList":
{
},
"cardAttr":"",
"merchantAllowance":0,
"thirdPartyAllowance":0,
"thirdPartyPointDiscountAmount":0,
"installmentNumber":0,
"installmentSellerPercent":0,
"mchntName":"",
"convMchntNo":"",
"convTermNo":"",
"chnlType":"",
"promotionAmt":"",
"acqInstCode":"",
"issInstCode":"",
"bankCardNo":"",
"queryFlag":"",
"thirdPartyDiscountInstrution":"",
"userId":"",
"verifyType":"",
"authorizationCode":"",
"upiQrcVoucherNum":"",
"balanceAmtEnc":"",
"systemTraceNum":"",
"mCardAmt":""
}
响应参数
名称 | 类型 | 必填 | 最大长度 | 描述 | 示例值 |
---|---|---|---|---|---|
errCode | string | 是 | - | 平台错误码 业务错误码 |
00 |
errInfo | string | 是 | - | 错误说明 | 10000成功响应码 |
transactionTime | string | 是 | - | 交易时间 格式:hhmmss | 150241 |
transactionDate | string | 是 | - | 交易日期 格式:MMdd | 0719 |
transactionDateWithYear | string | 是 | - | 交易日期 格式:yyyyMMdd | 20230719 |
settlementDate | string | 是 | - | 结算日期 格式:MMdd | 0719 |
settlementDateWithYear | string | 是 | - | 结算日期 格式:yyyyMMdd | 20230719 |
retrievalRefNum | string | 是 | - | 检索参考号 长度12位 | 29184510823W |
transactionAmount | number | 是 | - | 订单金额 与交易请求金额一致,单位:分 | 7302 |
actualTransactionAmount | number | 是 | - | 营销联盟优惠后交易金额 营销联盟优惠后交易金额,最大长度12位,单位:分 | 7302 |
amount | number | 是 | - | 实际支付金额 用户实际支付金额,最大长度12位,单位:分 | 7302 |
orderId | string | 是 | - | 订单号 最大长度50位 | 20230719150237029184510823 |
marketingAllianceDiscountInstruction | string | 是 | - | 营销联盟优惠说明 | 微信钱包支付73.02元 |
thirdPartyDiscountInstruction | string | 是 | - | 第三方优惠说明 最大长度200位 | 微信钱包支付73.02元 |
thirdPartyName | string | 是 | - | 第三方名称 最大长度60位 | 微信钱包 |
thirdPartyBuyerId | string | 是 | - | 第三方买家Id | otdJ_uIoiCwFwQ2ocseCtnDOpqjU |
thirdPartyBuyerUserName | string | 是 | - | 第三方买家用户名 | otdJ_uIoiCwFwQ2ocseCtnDOpqjU |
thirdPartyOrderId | string | 是 | - | 第三方订单号 | 4200066286202307198238072004 |
thirdPartyPayInformation | string | 是 | - | 第三方支付信息 格式为:方式:金额 | 方式:金额 |
totalDiscountAmount | number | 是 | - | 优惠金额(合计) 单位:分 | |
discountStatus | string | 是 | - | 优惠状态 1:订单有优惠但未找到 2:订单有优惠且找到 | |
promotionList | array | 是 | 优惠活动活动列表 单品营销优惠活动列表 | ||
channelName | string | 是 | - | 渠道方 ACP:银联 UMS:银联商务 ALIPAY:支付宝 WXPAY:微信 | |
discountId | string | 是 | - | 优惠流水ID 最大长度50位 | |
eventNo | string | 是 | - | 活动编号 最大长度50位 | |
eventName | string | 是 | - | 活动名称 最大长度64位 | |
discountScope | string | 是 | - | 优惠范围 GLOBAL –全场代金券 SINGLE -单品优惠 | |
discountType | string | 是 | - | 优惠类型 微信: COUPON - 代金券 DISCOUNT - 优惠券 支付宝: ALIPAY_FIX_VOUCHER - 全场代金券 ALIPAY_DISCOUNT_VOUCHER - 折扣券 ALIPAY_ITEM_VOUCHER - 单品优惠 | |
eventDiscountAmount | number | 是 | - | 活动优惠金额 最大长度15位,单位:分 | |
platformDiscountAmount | number | 是 | - | 平台优惠金额 最大长度15位,单位:分 | |
merchantDiscountAmount | number | 是 | - | 商户优惠金额 最大长度15位,单位:分 | |
thirdPartyDiscountAmount | number | 是 | - | 第三方优惠金额 最大长度15位,单位:分 | |
thirdPartyDiscountDetail | string | 是 | - | 第三方出资详情 | |
goodsList | array | 是 | 单品列表 | ||
goodsId | string | 是 | - | 商品编号 最大长度50位 | |
discountAmount | number | 是 | - | 单品优惠金额 最大长度15位,单位:分 | |
goodsNumber | number | 是 | - | 商品数量 最大长度15位,为非0整数 | |
goodsPrice | number | 是 | - | 商品价格 单位:分 | |
goodsRemark | string | 是 | - | 商品备注 | |
rawPromotionList | object | 是 | - | 渠道和收单机构侧原始优惠信息列表 支付渠道侧信息channel_info: channel_code:支付渠道名称(ACP/ALIPAY/WXPAY) promotion_detail:微信优惠详情 voucher_detail_list:支付宝活动优惠详情 discount_goods_detail:支付宝单品优惠详情 | |
cardAttr | string | 是 | - | 卡类型 借记:01 贷记:03 账户余额:91 | |
merchantAllowance | number | 是 | - | 商户让利金额 单位:分 | |
thirdPartyAllowance | number | 是 | - | 第三方补贴金额 单位:分 | |
thirdPartyPointDiscountAmount | number | 是 | - | 积分抵扣金额 单位:分 | |
installmentNumber | number | 是 | - | 分期期数 花呗分期期数(目前支持支付宝渠道) | |
installmentSellerPercent | number | 是 | - | 付息方 花呗暂时只支持0/100,100:商家承担 | |
mchntName | string | 是 | - | 商户名称 | |
convMchntNo | string | 是 | - | 转商户商户号 | |
convTermNo | string | 是 | - | 转终端终端号 | |
chnlType | string | 是 | - | 目标渠道类型 目前仅数字货币二维码返回DCEP | |
promotionAmt | string | 是 | - | 优惠金额 单位为分,目前仅数字货币二维码返回 | |
acqInstCode | string | 是 | - | 受理银行机构代码 ,目前仅数字货币二维码返回 | |
issInstCode | string | 是 | - | 发卡行代码 详见返回码说明,目前仅数字货币二维码返回 | |
bankCardNo | string | 是 | - | 脱敏后的银行卡号 目前仅云闪付返回 | |
queryFlag | string | 是 | - | 查询标志 “Y”表示:订单状态未知,需要终端发起自动查询 | |
thirdPartyDiscountInstrution | string | 是 | - | 第三方优惠说明 | |
userId | string | 是 | - | 买家Id | |
verifyType | string | 是 | - | 准账户模式硬件钱包验密支付标记 当值为Y表示可发起验密支付 | |
authorizationCode | string | 是 | - | 授权码 | |
upiQrcVoucherNum | string | 是 | - | 付款凭证号 仅适用银联国际二维码 | |
balanceAmtEnc | string | 是 | - | 数币IC余额 余额(密文),仅数字货币IC卡交易返回 | |
systemTraceNum | string | 是 | - | 系统跟踪号 交易流水号,6位数字 | |
mCardAmt | string | 否 | - | 支卡通最终核销金额 支付宝渠道 |