微信支付 您所在的位置:网站首页 openid长度 微信支付

微信支付

#微信支付| 来源: 网络整理| 查看: 265

返回上一层 文档首页 / JSAPI下单 JSAPI下单

最新更新时间:2022.09.05 版本说明

商户系统先调用该接口在微信支付服务后台生成预支付交易单,返回正确的预支付交易会话标识后再按Native、JSAPI、APP等不同场景生成交易串调起支付。

接口说明

适用对象: 直连商户

请求URL:https://api.mch.weixin.qq.com/v3/pay/transactions/jsapi

请求方式:POST

path指该参数为路径参数

query指该参数需在请求URL传参

body指该参数需在请求JSON传参

请求参数 参数名 变量 类型[长度限制] 必填 描述 应用ID appid string[1,32] 是 body 由微信生成的应用ID,全局唯一。请求基础下单接口时请注意APPID的应用属性,例如公众号场景下,需使用应用属性为公众号的服务号APPID 示例值:wxd678efh567hg6787 直连商户号 mchid string[1,32] 是 body 直连商户的商户号,由微信支付生成并下发。 示例值:1230000109 商品描述 description string[1,127] 是 body 商品描述 示例值:Image形象店-深圳腾大-QQ公仔 商户订单号 out_trade_no string[6,32] 是 body 商户系统内部订单号,只能是数字、大小写字母_-*且在同一个商户号下唯一 示例值:1217752501201407033233368018 交易结束时间 time_expire string[1,64] 否 body 订单失效时间,遵循rfc3339标准格式,格式为yyyy-MM-DDTHH:mm:ss+TIMEZONE,yyyy-MM-DD表示年月日,T出现在字符串中,表示time元素的开头,HH:mm:ss表示时分秒,TIMEZONE表示时区(+08:00表示东八区时间,领先UTC8小时,即北京时间)。例如:2015-05-20T13:29:35+08:00表示,北京时间2015年5月20日 13点29分35秒。 示例值:2018-06-08T10:34:56+08:00 附加数据 attach string[1,128] 否 body 附加数据,在查询API和支付通知中原样返回,可作为自定义参数使用,实际情况下只有支付完成状态才会返回该字段。 示例值:自定义数据   通知地址 notify_url string[1,256] 是 body异步接收微信支付结果通知的回调地址,通知url必须为外网可访问的url,不能携带参数。 公网域名必须为https,如果是走专线接入,使用专线NAT IP或者私有回调域名可使用http 示例值:https://www.weixin.qq.com/wxpay/pay.php 订单优惠标记 goods_tag string[1,32] 否 body 订单优惠标记 示例值:WXG 电子发票入口开放标识 support_fapiao boolean 否 body 传入true时,支付成功消息和支付详情页将出现开票入口。需要在微信支付商户平台或微信公众平台开通电子发票功能,传此字段才可生效。 true:是 false:否 示例值:true + 订单金额 amount object 是 body 订单金额信息 参数名 变量 类型[长度限制] 必填 描述 总金额 total int 是 订单总金额,单位为分。 示例值:100 货币类型 currency string[1,16] 否 CNY:人民币,境内商户号仅支持人民币。 示例值:CNY + 支付者 payer object 是 body 支付者信息 参数名 变量 类型[长度限制] 必填 描述 用户标识 openid string[1,128] 是 用户在直连商户appid下的唯一标识。 下单前需获取到用户的Openid,Openid获取详见 示例值:oUpF8uMuAJO_M2pxb1Q9zNjWeS6o + 优惠功能 detail object 否 body 优惠功能 参数名 变量 类型[长度限制] 必填 描述 订单原价 cost_price int 否 1、商户侧一张小票订单可能被分多次支付,订单原价用于记录整张小票的交易金额。 2、当订单原价与支付金额不相等,则不享受优惠。 3、该字段主要用于防止同一张小票分多次支付,以享受多次优惠的情况,正常支付订单不必上传此参数。 示例值:608800 商品小票ID invoice_id string[1,32] 否 商家小票ID 示例值:微信123 + 单品列表 goods_detail array 否 单品列表信息 条目个数限制:【1,6000】 参数名 变量 类型[长度限制] 必填 描述 商户侧商品编码 merchant_goods_id string[1,32] 是 由半角的大小写字母、数字、中划线、下划线中的一种或几种组成。 示例值:1246464644 微信支付商品编码 wechatpay_goods_id string[1,32] 否 微信支付定义的统一商品编号(没有可不传) 示例值:1001 商品名称 goods_name string[1,256] 否 商品的实际名称 示例值:iPhoneX 256G 商品数量 quantity int 是 用户购买的数量 示例值:1 商品单价 unit_price int 是 单位为:分。如果商户有优惠,需传输商户优惠后的单价(例如:用户对一笔100元的订单使用了商场发的纸质优惠券100-50,则活动商品的单价应为原单价-50) 示例值:528800 + 场景信息 scene_info object 否 body 支付场景描述 参数名 变量 类型[长度限制] 必填 描述 用户终端IP payer_client_ip string[1,45] 是 用户的客户端IP,支持IPv4和IPv6两种格式的IP地址。 示例值:14.23.150.211 商户端设备号 device_id string[1,32] 否 商户端设备号(门店号或收银设备ID)。 示例值:013467007045764 + 商户门店信息 store_info object 否 商户门店信息 参数名 变量 类型[长度限制] 必填 描述 门店编号 id string[1,32] 是 商户侧门店编号 示例值:0001 门店名称 name string[1,256] 否 商户侧门店名称 示例值:腾讯大厦分店 地区编码 area_code string[1,32] 否 地区编码,详细请见省市区编号对照表。 示例值:440305 详细地址 address string[1,512] 否 详细的商户门店地址 示例值:广东省深圳市南山区科技中一道10000号 +结算信息 settle_info object 否 body 结算信息 参数名 变量 类型[长度限制] 必填 描述 是否指定分账 profit_sharing boolean 否 是否指定分账 示例值:false 请求示例 JSON { "mchid": "1900006XXX", "out_trade_no": "1217752501201407033233368318", "appid": "wxdace645e0bc2cXXX", "description": "Image形象店-深圳腾大-QQ公仔", "notify_url": "https://www.weixin.qq.com/wxpay/pay.php", "amount": { "total": 1, "currency": "CNY" }, "payer": { "openid": "o4GgauInH_RCEdvrrNGrntXDuXXX" } } { JAVA示例代码 } 返回参数 参数名 变量 类型[长度限制] 必填 描述 预支付交易会话标识 prepay_id string[1,64] 是 预支付交易会话标识。用于后续接口调用中使用,该值有效期为2小时 示例值:wx201410272009395522657a690389285100 返回示例 正常示例 { "prepay_id": "wx26112221580621e9b071c00d9e093b0000" } http://2323weixin.qq.com 错误码公共错误码 状态码 错误码 描述 解决方案 403 TRADE_ERROR 交易错误 因业务原因交易失败,请查看接口返回的详细信息 500 SYSTEM_ERROR 系统错误 系统异常,请用相同参数重新调用 401 SIGN_ERROR 签名错误 请检查签名参数和方法是否都符合签名算法要求 403 RULE_LIMIT 业务规则限制 因业务规则限制请求频率,请查看接口返回的详细信息 400 PARAM_ERROR 参数错误 请根据接口返回的详细信息检查请求参数 403 OUT_TRADE_NO_USED 商户订单号重复 请核实商户订单号是否重复提交 404 ORDER_NOT_EXIST 订单不存在 请检查订单是否发起过交易 400 ORDER_CLOSED 订单已关闭 当前订单已关闭,请重新下单 500 OPENID_MISMATCH openid和appid不匹配 请确认openid和appid是否匹配 403 NO_AUTH 商户无权限 请商户前往申请此接口相关权限 400 MCH_NOT_EXISTS 商户号不存在 请检查商户号是否正确 500 INVALID_TRANSACTIONID 订单号非法 请检查微信支付订单号是否正确 400 INVALID_REQUEST 无效请求 请根据接口返回的详细信息检查 429 FREQUENCY_LIMITED 频率超限 请降低请求接口频率 500 BANK_ERROR 银行系统异常 银行系统异常,请用相同参数重新调用 400 APPID_MCHID_NOT_MATCH appid和mch_id不匹配 请确认appid和mch_id是否匹配 403 ACCOUNT_ERROR 账号异常 用户账号异常,无需更多操作



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有