支付押金(JSAPI/APP支付)
微信支付提供了四种付款方式供用户支付押金:付款码支付、人脸支付、JSAPI支付、APP支付。商户可根据场景需要选择支持哪种付款方式,也可以四种都支持,即四种方式都对接。
请求参数 | 类型 | 描述 |
---|---|---|
xml | object | 声明请求的XML 数据结构 |
appid | string | 服务商应用ID |
mch_id | string | 商户号 |
sub_appid | string | 子商户应用ID |
sub_mch_id | string | 子商户号 |
device_info | string | 设备号 |
sign_type | string | 签名类型MD5 | HMAC-SHA256 枚举值之一 |
body | string | 商品描述 |
detail | string | 单品优惠活动该字段必传,JSON 格式字符串 |
cost_price | number | 订单原价 |
receipt_id | string | 商品小票ID |
goods_detail | object[] | 单品列表 |
goods_id | string | 商品编码 |
wxpay_goods_id | string | 微信支付商品编码 |
goods_name | string | 商品名称 |
quantity | number | 商品数量 |
price | number | 商品单价 |
attach | string | 附加数据 |
out_trade_no | string | 商户订单号 |
fee_type | string | 货币类型 |
total_fee | integer | 总金额 |
spbill_create_ip | string | 终端IP |
time_start | string | 交易起始时间 |
time_expire | string | 交易结束时间 |
notify_url | string | 通知地址 |
trade_type | string | 交易类型JSAPI | APP 枚举值之一 |
product_id | string | 商品ID |
limit_pay | string | 指定支付方式 |
openid | string | 用户标识 |
sub_openid | string | 用户子标识 |
receipt | string | 电子发票入口开放标识Y | N 枚举值之一 |
scene_info | string | 场景信息JSON 格式字符串 |
store_info | object | 实际门店信息 |
id | string | 门店id |
name | string | 门店名称 |
area_code | string | 门店行政区划码 |
address | string | 门店详细地址 |
php
$instance->v2->deposit->unifiedorder->postAsync([
'xml' => [
'appid' => 'wx8888888888888888',
'mch_id' => '1900000109',
'sub_appid' => 'wx8888888888888888',
'sub_mch_id' => '1900000109',
'device_info' => '013467007045764',
'sign_type' => 'HMAC-SHA256',
'body' => '腾讯充值中心-QQ会员充值',
'detail' => \json_encode([
'cost_price' => 1,
'receipt_id' => 'wx123',
'goods_detail' => [[
'goods_id' => '商品编码',
'wxpay_goods_id' => '1001',
'goods_name' => 'iPhone6s 16G',
'quantity' => 1,
'price' => 528800,
],],
]),
'attach' => '说明',
'out_trade_no' => '1217752501201407033233368018',
'fee_type' => 'CNY',
'total_fee' => '888',
'spbill_create_ip' => '123.12.12.123',
'time_start' => '20091225091010',
'time_expire' => '20091227091010',
'notify_url' => 'http://www.weixin.qq.com/wxpay/pay.php',
'trade_type' => 'JSAPI',
'product_id' => '12235413214070356458058',
'limit_pay' => 'no_credit',
'openid' => 'oUpF8uMuAJO_M2pxb1Q9zNjWeS6o',
'sub_openid' => 'oUpF8uMuAJO_M2pxb1Q9zNjWeS6o',
'receipt' => 'Y',
'scene_info' => \json_encode([
'store_info' => [
'id' => 'SZTX001',
'name' => '腾大餐厅',
'area_code' => '440305',
'address' => '科技园中一路腾讯大厦',
],
]),
],
])
->then(static function(\Psr\Http\Message\ResponseInterface $response) {
print_r(\WeChatPay\Transformer::toArray((string) $response->getBody()));
})
->wait();
php
$instance->chain('v2/deposit/unifiedorder')->postAsync([
'xml' => [
'appid' => 'wx8888888888888888',
'mch_id' => '1900000109',
'sub_appid' => 'wx8888888888888888',
'sub_mch_id' => '1900000109',
'device_info' => '013467007045764',
'sign_type' => 'HMAC-SHA256',
'body' => '腾讯充值中心-QQ会员充值',
'detail' => \json_encode([
'cost_price' => 1,
'receipt_id' => 'wx123',
'goods_detail' => [[
'goods_id' => '商品编码',
'wxpay_goods_id' => '1001',
'goods_name' => 'iPhone6s 16G',
'quantity' => 1,
'price' => 528800,
],],
]),
'attach' => '说明',
'out_trade_no' => '1217752501201407033233368018',
'fee_type' => 'CNY',
'total_fee' => '888',
'spbill_create_ip' => '123.12.12.123',
'time_start' => '20091225091010',
'time_expire' => '20091227091010',
'notify_url' => 'http://www.weixin.qq.com/wxpay/pay.php',
'trade_type' => 'JSAPI',
'product_id' => '12235413214070356458058',
'limit_pay' => 'no_credit',
'openid' => 'oUpF8uMuAJO_M2pxb1Q9zNjWeS6o',
'sub_openid' => 'oUpF8uMuAJO_M2pxb1Q9zNjWeS6o',
'receipt' => 'Y',
'scene_info' => \json_encode([
'store_info' => [
'id' => 'SZTX001',
'name' => '腾大餐厅',
'area_code' => '440305',
'address' => '科技园中一路腾讯大厦',
],
]),
],
])
->then(static function(\Psr\Http\Message\ResponseInterface $response) {
print_r(\WeChatPay\Transformer::toArray((string) $response->getBody()));
})
->wait();
php
$instance['v2/deposit/unifiedorder']->postAsync([
'xml' => [
'appid' => 'wx8888888888888888',
'mch_id' => '1900000109',
'sub_appid' => 'wx8888888888888888',
'sub_mch_id' => '1900000109',
'device_info' => '013467007045764',
'sign_type' => 'HMAC-SHA256',
'body' => '腾讯充值中心-QQ会员充值',
'detail' => \json_encode([
'cost_price' => 1,
'receipt_id' => 'wx123',
'goods_detail' => [[
'goods_id' => '商品编码',
'wxpay_goods_id' => '1001',
'goods_name' => 'iPhone6s 16G',
'quantity' => 1,
'price' => 528800,
],],
]),
'attach' => '说明',
'out_trade_no' => '1217752501201407033233368018',
'fee_type' => 'CNY',
'total_fee' => '888',
'spbill_create_ip' => '123.12.12.123',
'time_start' => '20091225091010',
'time_expire' => '20091227091010',
'notify_url' => 'http://www.weixin.qq.com/wxpay/pay.php',
'trade_type' => 'JSAPI',
'product_id' => '12235413214070356458058',
'limit_pay' => 'no_credit',
'openid' => 'oUpF8uMuAJO_M2pxb1Q9zNjWeS6o',
'sub_openid' => 'oUpF8uMuAJO_M2pxb1Q9zNjWeS6o',
'receipt' => 'Y',
'scene_info' => \json_encode([
'store_info' => [
'id' => 'SZTX001',
'name' => '腾大餐厅',
'area_code' => '440305',
'address' => '科技园中一路腾讯大厦',
],
]),
],
])
->then(static function(\Psr\Http\Message\ResponseInterface $response) {
print_r(\WeChatPay\Transformer::toArray((string) $response->getBody()));
})
->wait();
php
$response = $instance->v2->deposit->unifiedorder->post([
'xml' => [
'appid' => 'wx8888888888888888',
'mch_id' => '1900000109',
'sub_appid' => 'wx8888888888888888',
'sub_mch_id' => '1900000109',
'device_info' => '013467007045764',
'sign_type' => 'HMAC-SHA256',
'body' => '腾讯充值中心-QQ会员充值',
'detail' => \json_encode([
'cost_price' => 1,
'receipt_id' => 'wx123',
'goods_detail' => [[
'goods_id' => '商品编码',
'wxpay_goods_id' => '1001',
'goods_name' => 'iPhone6s 16G',
'quantity' => 1,
'price' => 528800,
],],
]),
'attach' => '说明',
'out_trade_no' => '1217752501201407033233368018',
'fee_type' => 'CNY',
'total_fee' => '888',
'spbill_create_ip' => '123.12.12.123',
'time_start' => '20091225091010',
'time_expire' => '20091227091010',
'notify_url' => 'http://www.weixin.qq.com/wxpay/pay.php',
'trade_type' => 'JSAPI',
'product_id' => '12235413214070356458058',
'limit_pay' => 'no_credit',
'openid' => 'oUpF8uMuAJO_M2pxb1Q9zNjWeS6o',
'sub_openid' => 'oUpF8uMuAJO_M2pxb1Q9zNjWeS6o',
'receipt' => 'Y',
'scene_info' => \json_encode([
'store_info' => [
'id' => 'SZTX001',
'name' => '腾大餐厅',
'area_code' => '440305',
'address' => '科技园中一路腾讯大厦',
],
]),
],
]);
print_r(\WeChatPay\Transformer::toArray((string) $response->getBody()));
php
$response = $instance->chain('v2/deposit/unifiedorder')->post([
'xml' => [
'appid' => 'wx8888888888888888',
'mch_id' => '1900000109',
'sub_appid' => 'wx8888888888888888',
'sub_mch_id' => '1900000109',
'device_info' => '013467007045764',
'sign_type' => 'HMAC-SHA256',
'body' => '腾讯充值中心-QQ会员充值',
'detail' => \json_encode([
'cost_price' => 1,
'receipt_id' => 'wx123',
'goods_detail' => [[
'goods_id' => '商品编码',
'wxpay_goods_id' => '1001',
'goods_name' => 'iPhone6s 16G',
'quantity' => 1,
'price' => 528800,
],],
]),
'attach' => '说明',
'out_trade_no' => '1217752501201407033233368018',
'fee_type' => 'CNY',
'total_fee' => '888',
'spbill_create_ip' => '123.12.12.123',
'time_start' => '20091225091010',
'time_expire' => '20091227091010',
'notify_url' => 'http://www.weixin.qq.com/wxpay/pay.php',
'trade_type' => 'JSAPI',
'product_id' => '12235413214070356458058',
'limit_pay' => 'no_credit',
'openid' => 'oUpF8uMuAJO_M2pxb1Q9zNjWeS6o',
'sub_openid' => 'oUpF8uMuAJO_M2pxb1Q9zNjWeS6o',
'receipt' => 'Y',
'scene_info' => \json_encode([
'store_info' => [
'id' => 'SZTX001',
'name' => '腾大餐厅',
'area_code' => '440305',
'address' => '科技园中一路腾讯大厦',
],
]),
],
]);
print_r(\WeChatPay\Transformer::toArray((string) $response->getBody()));
php
$response = $instance['v2/deposit/unifiedorder']->post([
'xml' => [
'appid' => 'wx8888888888888888',
'mch_id' => '1900000109',
'sub_appid' => 'wx8888888888888888',
'sub_mch_id' => '1900000109',
'device_info' => '013467007045764',
'sign_type' => 'HMAC-SHA256',
'body' => '腾讯充值中心-QQ会员充值',
'detail' => \json_encode([
'cost_price' => 1,
'receipt_id' => 'wx123',
'goods_detail' => [[
'goods_id' => '商品编码',
'wxpay_goods_id' => '1001',
'goods_name' => 'iPhone6s 16G',
'quantity' => 1,
'price' => 528800,
],],
]),
'attach' => '说明',
'out_trade_no' => '1217752501201407033233368018',
'fee_type' => 'CNY',
'total_fee' => '888',
'spbill_create_ip' => '123.12.12.123',
'time_start' => '20091225091010',
'time_expire' => '20091227091010',
'notify_url' => 'http://www.weixin.qq.com/wxpay/pay.php',
'trade_type' => 'JSAPI',
'product_id' => '12235413214070356458058',
'limit_pay' => 'no_credit',
'openid' => 'oUpF8uMuAJO_M2pxb1Q9zNjWeS6o',
'sub_openid' => 'oUpF8uMuAJO_M2pxb1Q9zNjWeS6o',
'receipt' => 'Y',
'scene_info' => \json_encode([
'store_info' => [
'id' => 'SZTX001',
'name' => '腾大餐厅',
'area_code' => '440305',
'address' => '科技园中一路腾讯大厦',
],
]),
],
]);
print_r(\WeChatPay\Transformer::toArray((string) $response->getBody()));
返回字典 | 类型 | 描述 |
---|---|---|
return_code | string | 返回状态码SUCCESS | FAIL 枚举值之一 |
return_msg | string | 返回信息 |
appid | string | 服务商应用ID |
mch_id | string | 商户号 |
sub_appid | string | 子商户应用ID |
sub_mch_id | string | 子商户号 |
device_info | string | 设备号 |
nonce_str | string | 随机字符串 |
sign | string | 签名 |
result_code | string | 业务结果SUCCESS | FAIL 枚举值之一 |
err_code | string | 错误代码 |
err_code_des | string | 错误代码描述 |
trade_type | string | 交易类型JSAPI | APP 枚举值之一 |
prepay_id | string | 预支付交易会话标识 |
code_url | string | 二维码链接 |