位置: 编程技术 - 正文

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

  • 职工福利按工资发放吗
  • 文化事业建设费税收优惠政策2023
  • 公司零申报怎么注销
  • 房产契税发票丢了可以补开吗
  • 租赁收入无发票怎么做账
  • 用于在建工程的原材料进项税额可以抵扣吗
  • 外出施工安装的公司发工资怎么记账?
  • 营改增后还有企业所得税吗?
  • 企业公车私用如何处理
  • 筹建期的行政罚款的账务处理怎么做?
  • 房地产预缴增值税是含税还是不含税
  • 旅行社开的旅游费发票可以税前扣除
  • 土地增值税纳税地点
  • 印花税购销比例
  • 筹建期员工社保分录
  • 减免税额期末需要结转吗
  • 水利基金免税额度是多少
  • 预缴增值税附加税款怎么填写申报表
  • 企业发生待摊费怎么处理
  • 如何关闭开始菜单快捷键
  • 无偿赠送的货物需要缴纳印花税吗
  • 代开票作废税未退该如何分录?
  • 企业所得税会计准则
  • php require include
  • 招行网银专业版怎么登陆
  • php变量函数
  • 北极光下的众神图片
  • 会计财务报表的编制步骤
  • 递延所得税负债借贷方向
  • 所得税 季报
  • python编程自动化框架怎么搭建
  • php入门实例
  • python爬虫中数据接口的含义
  • python统计字符串长度
  • 企业的借款费用怎么入账
  • 维修费的会计分录怎么写
  • 应交增值税科目设置及账务处理
  • python线程间通信的几种方法
  • SQL server 2008安装程序遇到以下错误 sku
  • windows安装mq
  • 计提提成是什么意思
  • 汇兑损益可能被确认为
  • 代购进口货物垫付方案
  • 企业存续情况
  • 继续教育的相关知识
  • 购入固定资产入账会计凭证怎么做
  • 贷方账户日累计金额超限什么意思
  • 办公室租金产生的税率
  • 保险收入如何做账
  • 利税总额计算公式表
  • 物流公司的修理工资高吗
  • 工资表的重要性
  • 小规模纳税人去年免税,红冲后今年开多少税率的发票
  • 农业银行多级账簿可以代发工资吗
  • 小企业会计准则会计科目表
  • 什么是资本公积,举例说明
  • 企业预付账款的分录
  • mysql5.x升级到mysql5.7后导入之前数据库date出错的快速解决方法
  • win7卸载程序找不到软件
  • centos7 dns
  • 平板电脑截图
  • w10怎么usb连接上网
  • unity3d跑酷游戏推荐
  • Linux中mysqldump命令实例详解
  • node.js速成
  • c#程序例子
  • python写抢购教程
  • unity5用什么语言
  • javascript字符
  • 用python编写脚本
  • 在javascript中如何定义并调用函数
  • 使用筷子就餐会不会传染乙肝病毒
  • 出租车发票真伪怎么查询
  • 河南掌上登记手机号换了,登录不进去怎么办
  • 江苏省2023年1号文
  • 2022年各大省份录取分数线
  • 地方税务局属于地市级还是副省级
  • 核定土地增值税的条件
  • 贵州省税务局193项业务
  • 预付建造固定资产的工程价款
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设