支付宝代签约当面付支付

?:官方文档

?:调用接口

alipay.trade.create(统一收单交易创建接口)

首先创建应用  步骤:蚂蚁金服开放平台-->开发中心-->第三方应用

开发配置

添加功能(当面付,获取会员信息,第三方应用授权)

首先:让签约商户对第三方应用授权

API接口:https://docs.open.alipay.com/20160728150111277227/intro

授权成功之后拿到商户ID 和 授权token

也可以调用接口换取:https://docs.open.alipay.com/api_9/alipay.open.auth.token.app/

支付步骤:

1.获取支付宝用户的唯一userId

通过获取会员信息拿到auth_code换取授权访问令牌

2.获取支付宝交易号

const AlipaySdk = require(‘alipay-sdk‘).default;
const AlipayFormData = require(‘alipay-sdk/lib/form‘).default;

    // 支付宝支付
    async aliPay(ctx) {

       let privateKey = path.join(this.config.baseDir, ‘app/alipayKey‘, ‘private.pem‘);
        let publicKey = path.join(this.config.baseDir, ‘app/alipayKey‘,‘public.pem‘);

                const alipaySdk = new AlipaySdk({
                    appId: zfbServiceAppId.par_content,
                    privateKey: fs.readFileSync(privateKey, ‘ascii‘),  // 私钥
                    alipayPublicKey: fs.readFileSync(publicKey, ‘ascii‘),  // 支付宝公钥
                    signType: ‘RSA2‘,
                    charset: ‘utf-8‘
                })

                const formData = new AlipayFormData();
                formData.setMethod(‘get‘);
                formData.addField(‘notifyUrl‘, url+ ‘/api/h5/zfbPay/callBack‘);
                formData.addField(‘appAuthToken‘, shop.sho_zfb_authToken);  // 商户授权token
                formData.addField(‘bizContent‘, {
                    outTradeNo: out_trade_no,  // 订单号
                    totalAmount: money,      // 支付金额
                    subject: ‘支付到账‘,
                    body: ‘rhmzf‘,
                    buyerId: buyer_id,      // 支付用户 userId
                    extend_params: {
                        sys_service_provider_id: shop.sho_zfb_pid  // 商户ID
                    }
                });

                try {
                    const result = await alipaySdk.exec(
                        ‘alipay.trade.create‘,
                        {},
                        {
                            formData: formData,
                            validateSign: true
                        },
                    );

                    /**
                     * 获取支付宝交易号
                     */
                    var oauth2Result = await ctx.curl(result, {
                        method: ‘GET‘,
                        dataType: ‘json‘,
                    });

                    params = oauth2Result;

                } catch (err) {
                    console.log(‘报错了   ‘ + JSON.stringify(err))
                }

    }

3.引入支付宝jsAPI (支付宝H5开发文档)

通过支付宝交易号唤起支付

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script src="https://gw.alipayobjects.com/as/g/h5-lib/alipayjsapi/3.1.1/alipayjsapi.min.js"></script>
</head>

<body>
    <h1>点击以下按钮唤起收银台支付</h1>
    <!-- 引入 -->
    <!-- 按钮 -->
    <button id="J_btn" class="btn btn-default">支付</button>

    <script>
        // 触发事件
        var btn = document.querySelector(‘#J_btn‘);
        btn.addEventListener(‘click‘, function () {
            ap.tradePay({
                tradeNO: "<%-tradeNO%>" // 支付宝交易号
            }, function (res) {
                ap.alert(res.resultCode);
                // 你支付成功后要处理的逻辑
            });
        });
    </script>
</body>

</html>

原文地址:https://www.cnblogs.com/zyulike/p/10886389.html

时间: 2024-11-08 13:30:06

支付宝代签约当面付支付的相关文章

支付宝沙箱环境操作(当面付)

1.第一步:要注册企业账号或者个人支付宝账号,使用企业账号或者个人账号进行登录的蚂蚁金服开放平台. 2.第二步:首次进入系统界面有三个选项,用户可以根据个人自由选择第一项,第二项或者第三项的入住. 3.第三步: 支付宝沙箱环境——沙箱应用栏目中可以看到系统自动分配的信息如图所示: 当面付支付操作流程 1.点击  沙箱当面付接入引导 ,下载 支付宝密钥生成器 按照说明将生成的密钥填入沙箱环境信息配置. 2.下载 当面付DEMO 3.DEMO 解压后导入项目到开发工具(IDEA),导入后发现报错,这

支付宝支付开发—当面付条码支付和扫码支付

关键字:支付宝 当面付 条码支付 扫码支付 二维码支付 订单查询 退款作者:方倍工作室 本文介绍支付宝中当面付下属的条码支付.扫码支付.订单查询.退款申请的集成开发过程. 本文分为以下五个部分: 条码支付和扫码支付介绍 申请应用 密钥生成及配置 API及SDK集成 条码支付.扫码支付.订单查询.退款申请 一.条码支付及二维码支付介绍 1. 条码支付 条码支付是支付宝给到线下传统行业的一种收款方式.商家使用扫码枪等条码识别设备扫描用户支付宝钱包上的条码/二维码,完成收款.用户仅需出示付款码,所有收

支付宝支付开发——当面付条码支付和扫码支付

关键字:支付宝 当面付 条码支付 扫码支付 二维码支付 订单查询 退款作者:方倍工作室原文: http://www.cnblogs.com/txw1958/p/alipay-f2fpay.html 本文介绍支付宝中当面付下属的条码支付.扫码支付.订单查询.退款申请的集成开发过程. 本文分为以下五个部分: 条码支付和扫码支付介绍 申请应用 密钥生成及配置 API及SDK集成 条码支付.扫码支付.订单查询.退款申请 注: 支付宝支付开发有一定的门槛,如果您愿意为知识付费来节省您宝贵的时间,请直接见底

支付宝支付开发——当面付

关键字:支付宝 当面付 条码支付 扫码支付 二维码支付 订单查询 退款作者:方倍工作室原文: http://www.cnblogs.com/txw1958/p/alipay-f2fpay.html 本文介绍支付宝中当面付下属的条码支付.扫码支付.订单查询.退款申请的集成开发过程. 本文分为以下五个部分: 条码支付和扫码支付介绍 申请应用 密钥生成及配置 API及SDK集成 条码支付.扫码支付.订单查询.退款申请 一.条码支付及二维码支付介绍 1. 条码支付 条码支付是支付宝给到线下传统行业的一种

支付宝当面付(条码支付)功能开发

1.什么是当面付 当面付产品介绍 商户可通过以下任一方式在线下完成交易收款: 商家通过扫描线下买家支付宝钱包中的条码.二维码等方式将买家的交易资金直接打入卖家支付宝账户,资金实时到账: 线下买家通过使用支付宝钱包扫描商家的二维码等方式完成支付,提升商家收银效率,资金实时到账: 线下买家使用支付宝钱包中的当面付功能,通过声波支付的方式向商家完成付款,资金实时到账. 简单地说,即我们日常中使用的 条码支付.扫码支付.声波支付. 本篇的开发流程,将以条码支付为功能开发展开说明,条码支付即用户展示付款条

支付宝当面付扫码支付接口开发

最近公司要做一个有关支付的相关项目,需要对接支付宝的支付接口,实现扫描二维码支付功能,为此研究了一下支付宝相关业务.主要依据就是支付宝的相关接口文档: https://docs.open.alipay.com/catalog,重点关注如下红色方框部分 先看一下支付宝扫描二维码支付的业务流程,直接摘出来如下: 扫码支付(接入指引) 扫码支付,指用户打开支付宝钱包中的"扫一扫"功能,扫描商家展示在某收银场景下的二维码并进行支付的模式.该模式适用于线下实体店支付.面对面支付等场景. 业务流程

利用PBFunc在Powerbuilder中支付宝当面付功能

在PB实现支付宝当面付的功能,需要先在支付宝进行商户签约,并设置相关的公钥信息(具体参考支付宝文档). 然后使用对应的私钥文件对参数进RSAWithSha1前面计算.具体代码如下: string ls_pubFileName,ls_priFileName n_pbfunc_cryp lnv_cryp ls_priFileName ="D:\pbfunclib_pri.pem"//私钥文件 string ls_str string ls_appId,ls_secret,ls_biz_co

支付宝中当面付的通过音频传输数据的研究-实现部分(2)

书接上回 既然有目标了 我们就开始写测试代码吧~~ 1)使用超声波17500, 17700, 17900, 18100, 18300, 18500, 18700 分别表示0-6(为什么是0-6呢 嘿嘿 本人比较懒,SinVoice使用了6段频率,我也懒得修改代码了,就使用了同样的六段频率)其中0表示开始 6表示结束.真正的数据段就只有个1-5 2)修改SinVoice的正弦波生成类生成类 short out = (short) ((Math.sin(dl) *Math.sin(d))*mBits

支付宝当面付Demo测试

1.直接登录支付宝开放平台 https://docs.open.alipay.com/ 2.下载当面付的测试demo https://docs.open.alipay.com/194/105201/ 3.我这里用的是idea,打开这个demo 4.修改这个文件 5.更改内容 6.沙箱环境地址 https://docs.open.alipay.com/200/105311 7.RSA生成工具地址 https://docs.open.alipay.com/291/105971 8.注意事项 原文地址