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)
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • OpenCV-Python教程(8、Canny边缘检测)

    OpenCV-Python教程(8、Canny边缘检测)本篇文章介绍如何用OpenCV-Python来使用Canny算子。提示:转载请详细注明原作者及出处,谢谢!本文介绍使用OpenCV-Python实现基本的滤波处理本文不介详细的理论知识,读者可从其他资料中获取相应的背景知识。笔者推荐清华大学出版社的《图像处理与计算机视觉算法及应用(第2版)》。原型OpenCV-Python中Canny函数的原型为:edge

  • dtu连接mysql_Azure SQL 数据库中的DTU和eDTU是什么

    dtu连接mysql_Azure SQL 数据库中的DTU和eDTU是什么AzureSQL数据库中的DTU和eDTU是什么03/07/20177分钟可看完本文内容MaxShen沈云技术解决方案专家AzureSQL使用了数据库事务单位(DTU)和弹性数据库事务单位(eDTU)来作为一个计量单位。但是DTU和eDTU究竟是什么?在官方文档中是这样解释的:DTU是一个资源度量单位,表示保证可用于单一数据库服务层内特定性能级别的单个AzureSQL…

    2022年10月31日
  • 浅析ASP.NET的IIS映射

    浅析ASP.NET的IIS映射

  • 物理讨论题复习

    物理讨论题复习请简要回答避雷针的工作原理?避雷针由于曲率半径小,电荷面密度大,从而产生尖端放电现象,导致自身与带电云层形成回路。导致自身电荷放出从而不会被雷击中,当带电云层密度过大,避雷针通过接地把电引下大地“分子电流假说“是谁提出的?请解释“分子电流”。安培。在原子、分子等物质微粒内部,存在着一种环形电流—-分子电流。分子电流使每个物质都成为微小的磁体,他的两侧相当于两个磁极请解释”磁偶极子“。磁偶极子是类比电偶极子而建立的物理模型。具有等值异号的两个点磁荷构成的系统称为磁偶极子。磁偶极子的物理

    2022年10月29日
  • intellij idea破解版(sw2018破解失败)

    IntelliJIDEA2018破解方法输入如下地址激活:http://www.luochenzhimu.com:1024 参考链接:https://www.7down.com/soft/223192.html

  • Java数据结构系列之——栈(2):栈的链式存储结构及其操作

    Java数据结构系列之——栈(2):栈的链式存储结构及其操作

发表回复

您的电子邮箱地址不会被公开。

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