payjs教程_jsapi和native支付的区别

payjs教程_jsapi和native支付的区别frompayjsimportPayJS#也可根据个人习惯选择使用Payjs/PAYJS/payjsfrompayjsimportPayJSNotify#也可根据个人习惯选择使用

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

from payjs import PayJS # 也可根据个人习惯选择使用 Payjs/PAYJS/payjs
from payjs import PayJSNotify # 也可根据个人习惯选择使用 PayjsNotify/PAYJSNotify

MCHID = '这里是商户号'
KEY = '这里是商户密钥'

# 初始化
p = PayJS(MCHID, KEY)

# 扫码支付
OUT_TRADE_NO = '2017TEST' # 外部订单号(自己的支付系统的订单号,请保证唯一)
TOTAL_FEE = 1 # 支付金额,单位为分,金额最低 0.01 元最多 10000 元
BODY = '测试支付' # 订单标题
NOTIFY_URL = 'https://pay.singee.site/empty/' # Notify 网址
ATTACH = 'info' # Notify 内容
r = p.QRPay(out_trade_no=OUT_TRADE_NO, total_fee=TOTAL_FEE, body=BODY, notify_url=NOTIFY_URL, attach=ATTACH)
if r:
print(r.code_url) # 二维码地址(weixin:// 开头,请使用此地址构建二维码)
print(r.qrcode) # 二维码地址(https:// 开头,为二维码图片的地址)
print(r.payjs_order_id) # 订单号(PAYJS 的)
else:
print(r.STATUS_CODE) # HTTP 请求状态码
print(r.ERROR_NO) # 错误码
print(r.error_msg) # 错误信息
print(r)

# 构造收银台支付网址(仅构造链接,请使用浏览器 302 到这个网址,无法预检查调用是否成功)
c = p.get_cashier_url(out_trade_no=OUT_TRADE_NO, total_fee=TOTAL_FEE, body=BODY, callback_url=CALLBACK_URL, notify_url=NOTIFY_URL, attach=ATTACH)
print(c)

# JSApi 支付
OPENID = '这里填写支付用户的 OpenID' # 支付用户在 PayJS 端的 OpenID,可通过 get_openid 获取
j = p.JSApiPay(out_trade_no=OUT_TRADE_NO, total_fee=TOTAL_FEE, openid=OPENID, body=BODY, notify_url=NOTIFY_URL, attach=ATTACH)
if j:
print(j.jsapi) # 用于发起支付的支付参数
else:
print(j.STATUS_CODE) # HTTP 请求状态码
print(j.ERROR_NO) # 错误码
print(j.error_msg) # 错误信息
print(j)

# 刷卡支付
AUTH_CODE = '这里填写用户侧 18 位数字' # 用户的支付条码或二维码所对应的数字
m = p.MicroPay(out_trade_no=OUT_TRADE_NO, total_fee=TOTAL_FEE, auth_code=AUTH_CODE, body=BODY)
print(m)

# 订单查询
s = p.check_status(payjs_order_id=r.payjs_order_id)
if s:
print(s.paid) # 是否已支付
else:
print(s.error_msg) # 错误信息
print(s)

# 订单关闭
t = p.close(r.payjs_order_id)
if t:
print('Success')
else:
print('Error')
print(t.return_msg)

# 订单退款
t = p.refund(r.payjs_order_id)
if t:
print('Success')
else:
print('Error')
print(t.return_msg)

# 获取用户 OpenId
o = p.get_openid(callback_url=CALLBACK_URL)
print(o)

# 回调验证
n = PayJSNotify(KEY, '回调内容(str 或 dict)')
print(n)
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/167964.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 滴滴派单规则分析

    滴滴派单规则分析滴滴派单规则1批量匹配(全局最优)派单策略主要的原则是:站在全局视角,尽量去满足尽可能多的出行需求,保证乘客的每一个叫车需求都可以更快更确定的被满足,并同时尽力去提升每一个司机的接单效率,让总的接驾距离和时间最短。这个算法几乎是所有类似派单系统为了解决这个问题的最基础模型,在Uber叫做BatchingMatching,滴滴叫做“全局最优”或者“延迟集中分单”。2基于供需预测的分单(大数据预测)利用对未来的预测:如果我们预测出未来一个区域更有可能有更多的订单/司机,那么

    2022年6月2日
    143
  • DHCP原理及DHCP服务器的防攻击手段「建议收藏」

    DHCP原理及DHCP服务器的防攻击手段「建议收藏」一、DHCP简介1、产生背景:网络增大,手工配置存在很多问题【人员素质要求高、容易出错、灵活性差、IP地址资源利用率低、工作量大,不利于管理等】2、DHCP相对于静态手工配置的优点【效率高、灵活性强、易于管理等】二、DHCP的原理与配置(一)、DHCP的基本工作过程【发现阶段、提供阶段、请求阶段、确认阶段】如下图:【发现阶段】:在发现阶段,DHCP客户端会以广播的方式给自己所在在广播域…

    2022年6月17日
    33
  • 打包的技巧图解(手机软件打包)

    我们打包APP需要用到HBuilder,所以先讲解如何安装使用HBuilder的下载与安装HBuilder的官网下载地址:https://www.dcloud.io/点击DOWNLOAD后会弹出如上显示的两种版本下载Windows版和MacOS版根据我们电脑版本下载即可,我们一定要下载标准版哦(正式版中的)我这里是Windows系统,所以我选择的是window版下载完是一个压缩包右击压缩一下即可打开文件夹后找到如下HBuilderX.exe文件双击即可运行为了方便我们

    2022年4月17日
    62
  • 龙芯架构是自己的吗_debian重装系统

    龙芯架构是自己的吗_debian重装系统龙芯灵珑一体机,型号9s2a,pmon版本LM9103-1.5.9原机硬盘250g,装有debian5和debian6双系统由于在debian6系统下不小心误删除了部分文件,导致系统不能关机,不能重启,故重装。此次安装采用usb安装方式前期准备:(在linux系统下,下载安装文件,解压文件,拷贝到u盘)1,将debian6的安装文件拷贝到u盘(一体机挑u盘,没有u盘可以采用硬盘…

    2022年10月18日
    0
  • PHPMailer发送邮件中文附件名是乱码

    PHPMailer发送邮件中文附件名是乱码

    2021年9月22日
    43
  • Try out the latest C++ compiler toolset without waiting for the next update of Visual Studio

    Updated22/Apr/2016:TheNuGet packageis nowbeinguploadeddaily.Thepayloaddoesn’tch

    2021年12月23日
    38

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号