位置: 编程技术 - 正文

支付宝支付开发——当面付条码支付和扫码支付实例(uniapp支付宝支付开发)

编辑:rootadmin

推荐整理分享支付宝支付开发——当面付条码支付和扫码支付实例(uniapp支付宝支付开发),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:支付宝支付开发者平台,支付宝支付开发者文档,支付宝支付开发票,uniapp支付宝支付开发,支付宝支付开发票怎么开,支付宝支付开发票怎么开,uniapp支付宝支付开发,uniapp支付宝支付开发,内容如对您有帮助,希望把文章链接给更多的朋友!

本文介绍支付宝中当面付下属的条码支付、扫码支付、订单查询、退款申请的集成开发过程。

本文分为以下五个部分:

条码支付和扫码支付介绍 申请应用 密钥生成及配置 API及SDK集成 条码支付、扫码支付、订单查询、退款申请

一、条码支付及二维码支付介绍

1. 条码支付条码支付是支付宝给到线下传统行业的一种收款方式。商家使用扫码枪等条码识别设备扫描用户支付宝钱包上的条码/二维码,完成收款。用户仅需出示付款码,所有收款操作由商家端完成。其使用场景如下:业务流程:

使用步骤:

用户登陆支付宝钱包,点击首页“付款”,进入付款码界面; 收银员在商家收银系统操作生成订单,用户确认支付金额; 用户出示钱包的“付款码”,收银员用扫码设备来扫描用户手机上的条码/二维码后,商家收银系统提交支付; 付款成功后商家收银系统会拿到支付成功或者失败的结果。

2. 扫码支付

扫码支付,指用户打开支付宝钱包中的“扫一扫”功能,扫描商家展示在某收银场景下的二维码并进行支付的模式。该模式适用于线下实体店支付、面对面支付等场景。

其使用场景如下:业务流程:

使用步骤:

用户登陆支付宝钱包,点击首页“付款-扫码付”,进入扫一扫界面; 收银员在商家收银系统操作生成支付宝订单,用户确认支付金额,并生成二维码; 用户使用钱包的“扫码付”,扫收银员提供的二维码,确认支付; 用户付款后商家收银系统会拿到支付成功或者失败的结果。

二、接口申请

企业在申请企业支付宝之后,进行功能申请并签约,然后在蚂蚁金服开放平台中申请应用如下(详细过程就略了)然后在功能列表中,申请当面付这一功能,申请成功后如下。这样,我们就有了当面付的权限了。

三、密钥生成

在支付宝当面付的接口中,使用了非对称加密算法,商户自己的公钥和私钥需要自己使用OpenSSL手动生成。对这些概念比较陌生的话,请先自行先了解一下密码学的相关知识。OpenSSL也可以从方倍工作室博客中找到。

下载支付宝官方提供的密钥生成工具OpenSSL,然后执行以下命令就可以生成公钥和私钥。其中

是用于生成RSA私钥,执行后在程序目录中生成一个文件rsa_private_key.pem,其内容如下

-----BEGIN RSA PRIVATE KEY-----MIICXAIBAAKBgQCyffRONGd8Q/1kRh1cpsSRiDXLHI7zxdPJGYe5HKDWF7u9b3zZU9erZpMXE7gZRKsxIgOurH4uqhmVRbto3e+LiYOyNpd6As3QKCTIT7ajhHicZ6GWhegTUiVLqiuWLsauQcbI6DO4GEZrlvAdzus0WcJiJOxWrxSQIDAQABAoGAXBJYyVaC4zj3Jph8YOStlR5NbwdATdW/glWWT+0rnNEiTQHRNvY7lNVNJgrPrTSTVgjOPxmwSnebakhIuGIdPqGLE4LGd5lKWTzkdBMvhatfNsCCzcEVFqKg3tZd4t3fQFrILsnnZpLhiWjIrStCkR3rx9OECQQDWMSHychEVMQqVNasbGEicKWxhoDqjdm2lHkBx4mrB9JEZFDs6MxWdajf2/Qw+tgtpN3YBcCDw/HnGHhQtStAkEA1VTyjOdAwWode8X4fu0IPq9+EmcVOAJjLBHmropwgOdj3raqT/ThaKeaydjabsTAiY2JHiTiyH+1bGjQJBAKgRJXH5OFxSG7uXIbCofYJiFig7EcfxxVcqxaaW4u4N2Uy0c0TXkL5T+lXzeQg8D/gfbJj0QuTVNzgdofdoECQBHYOznCFk6Xe8PguXqUhT4JG/iu4DjWjT+kuzbSjerHtcVylY4JpZFuoHRKoM4Fj6/4UUqwRjmABFgZrX4+sfkCQCNI8RCZ6yprh5kEOePo3uazAlNENP8dKkhgqChawdKNzlJNtSTHFx6NkhzyruJGQ5Vx1Lkl0wKuKbXM=-----END RSA PRIVATE KEY-----

命令

是用于生成RSA公钥,执行后在程序目录中生成一个文件rsa_public_key.pem,其内容如下

-----BEGIN PUBLIC KEY-----MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCyffRONGd8Q/1kRh1cpsSRiDXLHI7zxdPJGYe5HKDWF7u9b3zZU9erZpMXE7gZRKsxIgOurH4uqhmVRbto3e+LiYOyNpd6As3QKCTIT7ajhHicZ6GWhegTUiVLqiuWLsauQcbI6DO4GEZrlvAdzus0WcJiJOxWrxSQIDAQAB-----END PUBLIC KEY-----

生成的这个RSA公钥,需要填写到应用中去,填写地址如下所示。私钥不需要填到配置中,到时候配置到代码中。特别注意,密钥要去掉注释部分,且转换成一行字符,否则回车换行也成为密钥的一部分,将导致无法正常加解密。同时,可以点击 “查看支付宝公钥”,将支付宝的公钥复制保存下来,后面的程序中将需要用到。

四、密钥生成API与密钥配置公共参数

支付宝支付开发——当面付条码支付和扫码支付实例(uniapp支付宝支付开发)

请求地址: 环境 HTTPS请求地址 正式环境

公共请求参数:

参数 类型 是否必填 最大长度 描述 app_id String 是 支付宝分配给开发者的应用ID method String 是 接口名称 format String 否 仅支持JSON charset String 是 请求使用的编码格式,如utf-8,gbk,gb等 sign_type String 是 商户生成签名字符串所使用的签名算法类型,目前支持RSA sign String 是 商户请求参数的签名串,详见签名 timestamp String 是 发送请求的时间,格式"yyyy-MM-dd HH:mm:ss" version String 是 3 调用的接口版本,固定为:1.0 notify_url String 否 支付宝服务器主动通知商户服务器里指定的页面http/https路径。 app_auth_token String 否 详见应用授权概述 biz_content String 是 - 请求参数的集合,最大长度不限,除公共参数外所有请求参数都必须放在这个参数中传递,具体参照各产品快速接入文档

请求参数

参数 类型 是否必填 最大长度 描述 out_trade_no String 必须 商户订单号,个字符以内、可包含字母、数字、下划线;需保证在商户端不重复 scene String 必须 支付场景 条码支付,取值:bar_code 声波支付,取值:wave_code auth_code String 必须 支付授权码 seller_id String 可选 如果该值为空,则默认为商户签约账号对应的支付宝用户ID total_amount Price 可选 订单总金额,单位为元, discountable_amount Price 可选 参与优惠计算的金额,单位为元 undiscountable_amount Price 可选 不参与优惠计算的金额,单位为元 subject String 必须 订单标题 body String 可选 订单描述 ?goods_detail GoodsDetail [] 可选 - 订单包含的商品列表信息,Json格式,其它说明详见商品明细说明 operator_id String 可选 商户操作员编号 store_id String 可选 商户门店编号 terminal_id String 可选 商户机具终端编号 alipay_store_id String 可选 支付宝的店铺编号 ?extend_params ExtendParams 可选 - 业务扩展参数 timeout_express String 可选 6 该笔订单允许的最晚付款时间,逾期将关闭交易。 ?royalty_info RoyaltyInfo 可选 - 描述分账信息,Json格式,其它说明详见分账说明 ?sub_merchant SubMerchant 可选 - 二级商户信息,当前只对特殊银行机构特定场景下使用此字段

公共响应参数

参数 类型 是否必填 最大长度 描述 code String 是 - 网关返回码,详见文档 msg String 是 - 网关返回码描述,详见文档 sub_code String 否 - 业务返回码,详见文档 sub_msg String 否 - 业务返回码描述,详见文档 sign String 是 - 签名,详见文档

响应参数

参数 类型 是否必填 最大长度 描述 trade_no String 必填 支付宝交易号 out_trade_no String 必填 商户订单号 buyer_logon_id String 必填 买家支付宝账号 total_amount Price 必填 交易金额 receipt_amount String 必填 实收金额 buyer_pay_amount Price 选填 买家付款的金额 point_amount Price 选填 使用积分宝付款的金额 invoice_amount Price 选填 交易中可给用户开具发票的金额 gmt_payment Date 必填 交易支付时间 ?fund_bill_list TradeFundBill [] 必填 - 交易支付使用的资金渠道 card_balance Price 选填 支付宝卡余额 store_name String 选填 发生支付交易的商户门店名称 buyer_user_id String 必填 买家在支付宝的用户id discount_goods_detail String 必填 - 本次交易支付所使用的单品券优惠的商品优惠信息

系统中配置如下

其中支付宝公钥就是在前面中复制保存的,直接复制到程序中即可,而商户私钥是之前OpenSSL中生成的私钥。APPID是该服务的id号。

而这个异步通知将会接收扫码支付结果的通知。

五、条码支付、扫码支付、订单查询、退款申请

1. 条码支付

条码支付的参数配置如下

程序监测,最终提交的url如下

扫码支付扫码支付的参数配置如下

生成的提交请求URL如下

就是二维码链接地址,使用接口将其成二维码后。当支付宝用户扫码的时候,接口通知将收到如下数据

当用户输入密码付款成功之后,将收到如下数据

3. 订单查询

订单查询的参数配置如下

最终提交的url如下

订单退款

订单退款的参数配置如下

最终提交的url如下

DEDE实现转跳属性文档在模板上调用出转跳地址 首先在/include/extend.func.php增加以下方法:/***动态地址转静态输出byWindchaserQQ:*$arcurl动态网址*@returnString*/functionarcurlHtml($arcurl){preg_match('/view.phpaid

PHP strcmp()和strcasecmp()的区别实例 这篇文章主要介绍了PHP中strcmp()和strcasecmp()函数字符串比较用法,结合实例形式较为详细的分析了strcmp()和strcasecmp()函数的功能,使用方法与区别本文实例

php 单例模式详细介绍及实现源码 这篇文章主要介绍了PHP中数据库单例模式的实现代码分享,本文先是讲解了单例模式的一些知识,然后给出了数据库单例模式实现代码。什么是单例模式单

标签: uniapp支付宝支付开发

本文链接地址:https://www.jiuchutong.com/biancheng/301613.html 转载请保留说明!

上一篇:Redis使用Eval多个键值自增的操作实例(redis的eval命令)

下一篇:DEDE实现转跳属性文档在模板上调用出转跳地址(dede转zblog)

  • 小规模纳税人有增值税吗
  • 首付款计提税金吗
  • 商铺税费怎么算2021
  • 向银行借款产生的利息
  • 开票和收到的款金额不一样怎么办?
  • 党建经费提取比例10%
  • 实缴资本需要存放多久
  • 小微企业所得税税率2.5% 10% 25%
  • 红字信息表跨月撤销和申报
  • 受托开发软件产品免征增值税
  • 个人所得税补交税
  • 建筑工程总包单位招聘
  • 营改增后还有消费税吗
  • 清卡增值税申报比对不通过的原因
  • 过渡期申报什么意思
  • 免税收入的三个条件
  • 营改增后营业外收入交增值税吗?
  • 供暖税收分类编码是多少
  • 企业房产使用税
  • 旅游合同签订
  • 分红未及时扣缴税款要缴滞纳金吗?
  • 支票存根没有进账怎么办
  • 什么是小型微利企业标准2023
  • 价外费用含义
  • 纳税人外购下列已税消费品
  • php编程入门教程
  • ms-dos安装
  • 外地预交增值税退税了如何把申报报表
  • web课程设计网页
  • win11开机后无法操作
  • linux 速度
  • 财产保险公司手续费税前扣除最新
  • 费用发生了 没有发票该如何记账
  • 免征个人所得税33种情形
  • vue.js简介
  • 制造费用的主要内容
  • 长期待摊费用装修款如何摊销
  • 合伙企业退伙如何缴纳个人所得税
  • 如何设置linux
  • 大气污染物排放2020标准
  • python wordcloud库
  • 施工单位转包需要受到什么惩罚
  • mysqlreport显示Com_中change_db占用比例高的问题的解决方法
  • 私车公用协议可以过户吗
  • 递延所得税资产和负债怎么理解
  • 主营业务收入可以进一般户吗
  • 股东入股怎么做分录
  • 金融资产减值损失
  • 本年负数去年正数如何算同比
  • 负债类科目分录
  • 劳务分包企业收入怎么算
  • 加盟店直营店什么意思
  • 日记账的建账工作
  • 会计凭证中阿拉伯数字如何书写
  • sql参数化还是被注入了
  • wdcp面板
  • fedora win10
  • linux防御
  • Linux查看磁盘剩余空间指令
  • win10 win7兼容模式
  • 如何查看winxp系统的运行内存
  • winxp开机启动程序
  • 电脑开机黑屏光标闪烁怎么解决
  • win7开机提示重启怎么办
  • win8系统开启摄像头权限
  • window10正版系统怎么装
  • win10怎么看电池寿命
  • node-js
  • 各浏览器网址
  • js时间比较大小的方法
  • linux用c语言实现命令功能
  • shell脚本函数及传参
  • Vue.js与 ASP.NET Core 服务端渲染功能整合
  • easyui表格
  • bootstrap按钮图标
  • Python对象转列表
  • 国家税务总局开票系统怎么开票
  • 中山市国家税务总局阜沙分局局长杨兴华
  • 工商登记是实质性的吗
  • 金税盘白盘如何换纽扣电池
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设