位置: 编程技术 - 正文

支付宝支付开发——当面付条码支付和扫码支付实例(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)

  • 小规模纳税人0税率发票
  • 1号没有抄税可以补税吗
  • 增值税发票的品名与报关单不一致
  • 个体工商户怎样纳税
  • 工程机械租赁增值税税率很多适用错误应该是9不是13
  • 增值税免税是否计入营业外收入
  • 季度申报后还要年度申报吗
  • 货币的兑换是怎么决定的
  • 海关废品回收
  • 冲抵货款的返利怎么做账
  • 公司评级有什么用
  • 计提存货跌价准备计算公式
  • 个人转租工厂需交什么税
  • 补缴的公积金可以抵扣个税吗
  • 案例分析小规模纳税人月销售不足3万如何处理?
  • 印刷费怎么开发票
  • 预缴企业所得税研发费用加计扣除
  • 公司支付个人劳务
  • 不同的征税主体对同一纳税人
  • 分期付款确认收入借方写啥
  • 零申报资产总额填注册资本怎么办呢
  • 高新企业研发项目
  • 其他应付款和其他应交款区别
  • 残保金减免如何做账
  • Win11 Build 10.0.22000.51 预览版ISO镜像下载汇总(苹果M1也可用)
  • 笔记本恢复出厂设置后和新的一样吗
  • 企业三大期间费用是什么
  • 今年利润弥补以后怎么算
  • 植物租赁方案
  • 微pe工具箱怎么用
  • linux统计代码总行数
  • 500万元固定资产管理办法
  • 银行企业未达账户怎么办
  • 辅导期一般纳税人标准
  • 怎么做委托银行业务
  • c语言 cmd
  • 保洁劳务派遣合同
  • 只有进项税没有销项
  • 长期待摊费用的摊销方法
  • 会计科目分类有几种方法
  • 调参数是什么意思
  • 无形资产摊销的方法
  • 交印花税的口诀
  • 发票跨月发现开错该怎么办?
  • 事业单位回复短信里的加号要吗
  • python元数据
  • 固定资产改扩建和大修理的区别
  • 预收货款开具专用发票
  • 电子回单可以入档案吗
  • 报税中的利润表怎么填
  • 增值税的征收对象是谁
  • 会计的借记和贷记什么意思
  • 清空表sql语句
  • 税控系统技术维护费的申报抵扣方法
  • 翻唱歌曲发行至国外的好处
  • 出口货物没有进项发票用什么平台申报
  • 生产成本核算的步骤
  • 外币折算差额怎么计算
  • 发票上有银行流水号吗
  • 财务报表怎么做
  • 微软和苹果是什么关系
  • centos更新命令
  • sun solaris 8何启用telnet ftp 功能
  • windowsxp查ip地址
  • win10 rs5
  • windows7准备配置windows
  • win7显示ipv6无网络访问权限
  • win8系统安装的软件在哪里
  • 如何选择适合你的颂钵
  • iframe 自适应宽度和高度
  • java script教程
  • jquery分页组件
  • 厦门翔安到同安有多远
  • 讲解JavaScript中for...in语句的使用方法
  • javascript要怎么学
  • javascript的push方法
  • 税务总局33号公告
  • 个人非住房房屋怎么交税
  • 调研基本情况介绍范文
  • 接受虚开增值税普票如何补救
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设