您当前的位置:首页 > 网站建设笔记 >

网站会员充值

0
前台充值表单提交页面
pay.php
get_code($order_id)
GetPayUrl($input)
WxPayApi::unifiedOrder($input)
WxPayResults::Init($response)
pay.dwt
notify.php
WxPayNotify

一、会员在线充值表单页面,该页面一般显示的内容有:会员账户余额,充值金额(输入文本框,用来填写充值金额,单位元),支付方式(支付宝、微信等)。

支付方式 ecs_payment 表的结构
名字类型整理属性默认额外注释
pay_idtinyint(3)UNSIGNEDAUTO_INCREMENT已安装的支付方式自增ID
pay_codevarchar(20)utf8_general_ci支付方式代码
pay_namevarchar(120)utf8_general_ci支付方式名称
pay_feevarchar(10)utf8_general_ci0支付费用
pay_desctextutf8_general_ci支付方式描述
pay_ordertinyint(3)UNSIGNED0支付方式的显示顺序
pay_configtextutf8_general_ci支付方式的配置信息
enabledtinyint(1)UNSIGNED0是否可用,0否,1是
is_codtinyint(1)UNSIGNED0是否货到付款,0否,1是
is_onlinetinyint(1)UNSIGNED0是否在线支付,0否,1是

支付方式ecs_payment表数据

ecs_order_pay 表的结构
名字类型整理属性默认额外注释
order_idvarchar(25)utf8_general_ci
order_outidvarchar(50)utf8_general_ci
order_namevarchar(50)utf8_general_ci
order_moneydecimal(10,2)UNSIGNED0.00
order_statevarchar(10)utf8_general_ciwpay
order_paymentvarchar(15)utf8_general_ci
order_payment_namevarchar(30)utf8_general_ci
bank_typevarchar(120)utf8_general_ci
order_atimeint(10)UNSIGNED0
order_ptimeint(10)UNSIGNED0
order_pstatetinyint(1)UNSIGNED0
user_idint(10)UNSIGNED

function action_pay()

Native支付

统一下单

应用场景

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

接口链接

URL地址:https://api.mch.weixin.qq.com/pay/unifiedorder

URL地址:https://api2.mch.weixin.qq.com/pay/unifiedorder(备用域名)见跨城冗灾方案

是否需要证书

请求参数

字段名变量名必填类型示例值描述
公众账号IDappidString(32)wxd678efh567hg6787微信支付分配的公众账号ID(企业号corpid即为此appid)
附加数据attachString(127)深圳分店附加数据,在查询API和支付通知中原样返回,可作为自定义参数使用。
商品描述bodyString(127)腾讯充值中心-QQ会员充值商品简单描述,该字段请按照规范传递,具体请见参数规定
设备号device_infoString(32)013467007045764自定义参数,可以为终端设备号(门店号或收银设备ID),PC网页或公众号内支付可以传WEB
商户号mch_idString(32)微信支付分配的商户号
随机字符串nonce_strString(32)随机字符串,长度要求在32位以内。
通知地址notify_urlString(256)body异步接收微信支付结果通知的回调地址,通知url必须为外网可访问的url,不能携带参数。公网域名必须为https,如果是走专线接入,使用专线NAT IP或者私有回调域名可使用http
商户订单号out_trade_noString(32)商户系统内部订单号,要求32个字符内(最少6个字符),只能是数字、大小写字母_-|*且在同一个商户号下唯一。
商品IDproduct_idString(32)trade_type=NATIVE时,此参数必传。此参数为二维码中包含的商品ID,商户自行定义。
终端IPspbill_create_ipString(64)支持IPV4和IPV6两种格式的IP地址。用户的客户端IP
标价金额total_feeint订单总金额,单位为分
交易类型trade_typeString(16)JSAPI--JSAPI支付(或小程序支付)、NATIVE--Native支付、APP--app支付,MWEB--H5支付,不同trade_type决定了调起支付的方式,请根据支付产品正确上传
MICROPAY--付款码支付,付款码支付有单独的支付接口,所以接口不需要上传,该字段在对账单中会出现
签名signString(32)通过签名算法计算得出的签名值,详见签名生成算法
签名类型sign_typeString(32)MD5签名类型,默认为MD5,支持HMAC-SHA256和MD5。
商品详情detailString(6000)商品详细描述,对于使用单品优惠的商户,该字段必须按照规范上传,详见单品优惠参数说明
标价币种fee_typeString(16)CNY符合ISO 4217标准的三位字母代码,默认人民币:CNY,境内商户号仅支持人民币
交易起始时间time_startString(14)20091225091010订单生成时间,格式为yyyyMMddHHmmss,如2009年12月25日9点10分10秒表示为20091225091010。
交易结束时间time_expireString(14)20091227091010订单失效时间,格式为yyyyMMddHHmmss,如2009年12月27日9点10分10秒表示为20091227091010。
订单优惠标记goods_tagString(32)WXG订单优惠标记,使用代金券或立减优惠功能时需要的参数
指定支付方式limit_payString(32)no_credit上传此参数no_credit--可限制用户不能使用信用卡支付
用户标识openidString(128)trade_type=JSAPI时(即JSAPI支付),此参数必传,此参数为微信用户在商户对应appid下的唯一标识。openid如何获取,可参考【获取openid】。企业号请使用【企业号OAuth2.0接口】获取企业号内成员userid,再调用【企业号userid转openid接口】进行转换
电子发票入口开放标识receiptString(8)YY,传入Y时,支付成功消息和支付详情页将出现开票入口。需要在微信支付商户平台或微信公众平台开通电子发票功能,传此字段才可生效
是否需要分账profit_sharingString(16)YY-是,需要分账
N-否,不分账
字母要求大写,不传默认不分账
场景信息scene_infoString(256)
{
  "store_info": {
    "id": "SZTX001",
    "name": "腾大餐厅",
    "area_code": "440305",
    "address": "科技园中一路腾讯大厦"
  }
}
该字段常用于线下活动时的场景信息上报,支持上报实际门店信息,商户也可以按需求自己上报相关信息。该字段为JSON对象数据,对象格式为{"store_info":{"id":"门店ID","name":"名称","area_code":"编码","address":"地址"}}
门店ididString(32)SZTX001门店编号,由商户自定义
门店名称nameString(64)腾讯大厦腾大餐厅门店名称,由商户自定义
门店行政区划码area_codeString(6)440305门店所在地行政区划码,详细见《最新县及县以上行政区划代码》
门店详细地址addressString(128)科技园中一路腾讯大厦门店详细地址 ,由商户自定义

返回结果

字段名变量名必填类型示例值描述
返回状态码return_codeString(16)SUCCESSSUCCESS/FAIL
此字段是通信标识,非交易标识,交易是否成功需要查看result_code来判断
返回信息return_msgString(128)OK当return_code为FAIL时返回信息为错误原因,例如:签名失败、参数格式校验错误

以下字段在return_code为SUCCESS的时候有返回

字段名变量名必填类型示例值描述
公众账号IDappidString(32)调用接口提交的公众账号ID
商户号mch_idString(32)调用接口提交的商户号
设备号device_infoString(32)自定义参数,可以为请求支付的终端设备号等
随机字符串nonce_strString(32)微信返回的随机字符串
签名signString(32)微信返回的签名值
业务结果result_codeString(16)SUCCESSSUCCESS/FAIL
错误代码err_codeString(32)SYSTEMERROR当result_code为FAIL时返回错误代码,详细参见下文错误列表
错误代码描述err_code_desString(128)系统错误当result_code为FAIL时返回错误描述,详细参见下文错误列表

以下字段在return_code和result_code都为SUCCESS的时候有返回

字段名变量名必填类型示例值描述
交易类型trade_typeString(16)JSAPI调用接口提交的交易类型,取值如下:
JSAPI--JSAPI支付
NATIVE--Native支付
APP--APP支付
MWEB--H5支付
预支付交易会话标识prepay_idString(64)微信生成的预支付会话标识,用于后续接口调用中使用,该值有效期为2小时,针对H5支付此参数无特殊用途
二维码链接code_urlString(64)trade_type=NATIVE时有返回,此url用于生成支付二维码,然后提供给用户进行扫码支付。
注意:code_url的值并非固定,使用时按照URL格式转成二维码即可。时效性为2小时
支付跳转链接mweb_urlString(64)mweb_url为拉起微信支付收银台的中间页面,可通过访问该url来拉起微信客户端,完成支付,mweb_url的有效期为5分钟。
orderQuery微信支付订单的查询
class WxPayDataBase WxPayResults::Init()
pay.dwt
pay.dwt
pay.dwt

建站咨询

咨询热线

微信咨询

返回顶部