【微信支付】统一下单接口详解

微信支付的统一下单接口是商户系统与微信支付系统交互的核心步骤之一。通过调用该接口,商户可以在微信支付服务后台生成预支付交易单,并获取 prepay_id,以便后续在小程序内调起支付。本文将全面解析统一下单接口的参数、使用场景以及常见注意事项。参考:微信支付统一下单接口

一、统一下单接口概述

1. 功能介绍

微信支付的统一下单接口主要用于生成预支付交易单。具体工作流程如下:

  • 商户系统向微信支付服务发起统一下单请求。
  • 微信支付后台根据请求生成预支付交易单,并返回 prepay_id
  • 商户使用 prepay_id 调起支付,完成支付流程。

2. 接口特点

  • 标准化:接口统一采用 HTTPS POST 请求,数据格式为 XML。
  • 安全性:通过签名算法确保参数完整性。
  • 灵活性:支持多种支付场景,例如小程序支付、扫码支付等。

二、接口链接及认证要求

1. 接口地址

https://api.mch.weixin.qq.com/pay/unifiedorder

2. 是否需要证书

统一下单接口 不需要证书,但后续某些接口(如退款接口)可能需要。


三、请求参数详解

1. 核心参数说明

以下是统一下单接口的核心参数:

参数名 是否必填 类型 示例值 描述
appid String(32) wxd678efh567hg6787 微信分配的小程序ID。
mch_id String(32) 1230000109 微信支付分配的商户号。
nonce_str String(32) 5K8264ILTKCH16CQ... 随机字符串,防止重放攻击,长度要求在32位以内。
sign String(64) C380BEC2BFD727A... 签名,通过签名算法生成,用于校验请求合法性。
body String(127) 腾讯充值中心-QQ会员充值 商品描述,简要说明订单内容。
out_trade_no String(32) 20150806125346 商户系统内部订单号,需保证唯一性。
total_fee int 88 订单总金额,单位为分。
spbill_create_ip String(64) 123.12.12.123 调用接口的机器IP地址。
notify_url String(256) https://example.com/pay/notify 接收支付结果通知的回调地址,必须为外网可访问的 HTTPS 链接。
trade_type String(16) JSAPI 交易类型,小程序支付固定填写 JSAPI
openid String(128) oUpF8uMuAJO_M... 用户标识,仅在 trade_type=JSAPI 时必传。

2. 参数补充说明

  • 随机字符串 (nonce_str)
    推荐使用安全的随机数生成算法生成,确保每次请求唯一。
  • 签名 (sign)
    签名算法包括 MD5HMAC-SHA256,需要与商户平台配置一致。
  • 通知地址 (notify_url)
    微信通过此地址向商户系统发送异步支付结果通知,确保 URL 可以被公网访问。

四、请求示例

以下是统一下单请求的示例代码:

1. 请求 XML 示例

<xml>
   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Peter-Lu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值