超详细教程!手把手教你如何在轻流内实现支付宝扫码支付、银企直联

AI智能搭建系统,海量业务模板,开箱即用,在线体验!

免费试用
轻流 · 2026-07-31 10:22:59 阅读147次
轻流OA管理系统 免费试用
❓每次打款前,你都要核对三四遍卡号金额,生怕输错账户,打错款目❓繁杂的付款工作占用大部分的工作时间,财务产出的整体价值不高❓依靠人工手动从银端获取回款,不仅耗时长,而且效率低用轻流,这些烦恼都可以统统甩开!通过轻流丰富的 Open API 接口和强大的 Q-Linker、Webhook数据传输能力,直接在轻流系统内就可以实现支付宝收款/退款、银行卡转账并查询流水和电子回单啦!(⚠️银企直联目前仅支持中国银行)口说无凭,一起来看看实现效果吧👇🌟实现步骤教程目录:
⚠️Tips:
因步骤十分详尽所以较长,耐心些,按步骤操作就可以实现视频中的同款效果(如果你还不是轻流用户,快点击👉注册👈,体验试用吧~) 

支付宝扫码支付 教程

 

1、准备工作

  • 绑定产品——【当面付】,并进行开通
  • 接口加签方式设置
 

2、获取调用接口所需具体公共参数

以扫码付接口为例:alipay.trade.precreate(统一收单线下交易预创建)
  • appid:应用ID
其余参数根据文档要求来进行获取

3、表单设计

1. 支付宝订单预创建并支付

其中【生成支付链接】与【确认支付状态】为代码块,【生成支付二维码】为Q-Linker字段

1.1. 生成支付链接

1.1.1. 代码注释

具体调用接口文档:alipay.trade.precreate(统一收单线下交易预创建)⚠️注意:所生成的二维码有效时间为2小时app_id:需要替换成具体调用的应用IDqf_field.{商品列表信息$$17B54DD0C$$},为表单中商品列表信息表格字段其中以 field_169208787 为例,表示商品列表信息表格中商品数量子字段 IDfield_id 获取方式 《如何在代码块中分辨表格的不同列》
qf_field.{商户订单号$$17B54DD0A$$},为表单中商户订单号字段qf_field.{订单总金额(单位为元)$$17B54DD0B$$},为表单中订单总金额(单位为元)字段qf_field.{订单标题$$17B44C092$$},为表单中订单标题字段应用私钥:只需要替换成具体调用的应用私钥生成支付链接:const axios = require('axios');const crypto = require('crypto');const { format } = require('date-fns');const currentDate = new Date();const formattedDate = format(currentDate, 'yyyy-MM-dd HH:mm:ss');// 原始数据const data = {"timestamp":formattedDate,"method": "alipay.trade.precreate","app_id": "2021003155650***","sign_type": "RSA2","version": "1.0","charset": "UTF-8"};const table = qf_field.{商品列表信息$$17B54DD0C$$};const goodsDetail = table.map(item => {const newItem = {"quantity": item.field_169208787,"goods_name": item.field_169208786,"goods_id": item.field_169208785,"price": item.field_169208788};return newItem;});//将新的 goods_detail 赋值给 data 中的 biz_contentdata.biz_content =`{"out_trade_no": qf_field.{商户订单号$$17B54DD0A$$},"total_amount":qf_field.{订单总金额(单位为元)$$17B54DD0B$$},"subject":qf_field.{订单标题$$17B44C092$$},"goods_detail":${JSON.stringify(goodsDetail)}}`;// 第一步:剔除sign字段const { sign, ...dataWithoutSign } = data;// 第二步:剔除值为空的参数const filteredData = Object.fromEntries(Object.entries(dataWithoutSign).filter(([key, value]) => value !== ''));// 第三步:按键的ASCII码值递增排序const sortedParams = Object.keys(filteredData).sort();// 第四步:将排序后的参数与其对应的值按照"参数=参数值"的格式组合起来const concatenatedParams = sortedParams.map(key => `${key}=${filteredData[key]}`).join('&');// 第五步:生成待签名字符串const signString = concatenatedParams;// 使用私钥对待签名字符串进行加密const privateKey = `-----BEGIN PRIVATE KEY-----MI****DANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAA...............-----END PRIVATE KEY-----`;const signer = crypto.createSign('RSA-SHA256');signer.update(signString, 'utf8');const signature = signer.sign(privateKey);const sig=signature.toString('base64');const encodedSig = encodeURIComponent(sig);let config = {method: 'get',maxBodyLength: Infinity,url: `https://openapi.alipay.com/gateway.do?timestamp=${formattedDate}&method=${data.method}&app_id=${data.app_id}&sign_type=${data.sign_type}&sign=${encodedSig}&version=${data.version}&charset=${data.charset}&biz_content=${data.biz_content}`};axios(config).then(function (res) {qf_output={'data':res.data}}); 1.1.2. 代码测试1.1.3. 解析配置1.1.4. 字段接收配置1.2. 生成支付二维码该字段为Q_Linker,调用接口将支付链接转为支付二维码(具体接口文档:生成二维码)
  • 需要点击申请appid,去获取对应的app_id和app_srcret
1.2.1. Q-Linker 配置
  • URL:https://www.mxnzp.com/api/qrcode/create/single
  • QueryParam:
  • Method:GET
  • Json path:
  • 字段接收配置
 1.3. 确认支付状态1.3.1. 代码注释具体调用接口文档:alipay.trade.query(统一收单交易查询)app_id:需要替换成具体调用的应用IDqf_field.{商户订单号$$17B54DD0A$$},为表单中商户订单号字段应用私钥:只需要替换成具体调用的应用私钥
 确认支付状态:
const axios = require('axios');const crypto = require('crypto');const { format } = require('date-fns');const currentDate = new Date();const formattedDate = format(currentDate, 'yyyy-MM-dd HH:mm:ss');// 原始数据const data = {"timestamp":formattedDate,"method": "alipay.trade.query","app_id": "2021003155650***","sign_type": "RSA2","version": "1.0","charset": "UTF-8"};data.biz_content =`{"out_trade_no": qf_field.{商户订单号$$17B54DD0A$$}}`;// 第一步:剔除sign字段const { sign, ...dataWithoutSign } = data;
// 第二步:剔除值为空的参数const filteredData = Object.fromEntries(Object.entries(dataWithoutSign).filter(([key, value]) => value !== ''));// 第三步:按键的ASCII码值递增排序const sortedParams = Object.keys(filteredData).sort();// 第四步:将排序后的参数与其对应的值按照"参数=参数值"的格式组合起来const concatenatedParams = sortedParams.map(key => `${key}=${filteredData[key]}`).join('&');// 第五步:生成待签名字符串const signString = concatenatedParams;// 使用私钥对待签名字符串进行加密const privateKey = `-----BEGIN PRIVATE KEY-----MII****BgkqhkiG9w0BAQEFAASCBKcwggSjAgEAA......................-----END PRIVATE KEY-----`;const signer = crypto.createSign('RSA-SHA256');signer.update(signString, 'utf8');const signature = signer.sign(privateKey);const sig=signature.toString('base64');const encodedSig = encodeURIComponent(sig);let config = {method: 'get',maxBodyLength: Infinity,url: `https://openapi.alipay.com/gateway.do?timestamp=${formattedDate}&method=${data.method}&app_id=${data.app_id}&sign_type=${data.sign_type}&sign=${encodedSig}&version=${data.version}&charset=${data.charset}&biz_content=${data.biz_content}`};axios(config).then(function (res) {qf_output={'data':res.data}});1.3.2. 代码测试1.3.3. 解析配置1.3.4. 字段接收配置1.4. 流程配置1.4.1. 申请人节点配置1.4.2. 确认支付信息并扫码支付1.4.3. 告知用户1.4.4. webhook节点
具体接口文档:单条数据流程回退接口
  • accessToken:轻商城——拓展插件——openAPI
  • 节点ID获取方式
可以调用接口来进行获取:获取单条数据的流程日志

2. 支付宝申请订单退款
2.1. 商户订单号2.2. 订单总金额 2.3. 退款2.3.1. 代码注释具体调用接口文档:alipay.trade.refund(统一收单交易退款接口)⚠️注意:交易超过约定时间(签约时设置的可退款时间)的订单无法进行退款。app_id:需要替换成具体调用的应用IDqf_field.{商户订单号$$17B598970$$}:表单中商户订单号字段qf_field.{退款金额$$17B598089$$}:表单中退款金额字段qf_field.{退款原因说明$$17B59808A$$}:表单中退款原因说明字段应用私钥:只需要替换成具体调用的应用私钥
退款:
const axios = require('axios');const crypto = require('crypto');const { format } = require('date-fns');const currentDate = new Date();const formattedDate = format(currentDate, 'yyyy-MM-dd HH:mm:ss');// 原始数据const data = {"timestamp":formattedDate,"method": "alipay.trade.refund","app_id": "2021003155650***","sign_type": "RSA2","version": "1.0","charset": "UTF-8"};data.biz_content =`{"out_trade_no":qf_field.{商户订单号$$17B598970$$},"refund_amount":qf_field.{退款金额$$17B598089$$},"refund_reason":qf_field.{退款原因说明$$17B59808A$$}}`;// 第一步:剔除sign字段const { sign, ...dataWithoutSign } = data;
// 第二步:剔除值为空的参数const filteredData = Object.fromEntries(Object.entries(dataWithoutSign).filter(([key, value]) => value !== ''));// 第三步:按键的ASCII码值递增排序const sortedParams = Object.keys(filteredData).sort();// 第四步:将排序后的参数与其对应的值按照"参数=参数值"的格式组合起来const concatenatedParams = sortedParams.map(key => `${key}=${filteredData[key]}`).join('&');// 第五步:生成待签名字符串const signString = concatenatedParams;// 使用私钥对待签名字符串进行加密const privateKey = `-----BEGIN PRIVATE KEY-----MII*****NBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAA……………………-----END PRIVATE KEY-----`;const signer = crypto.createSign('RSA-SHA256');signer.update(signString, 'utf8');const signature = signer.sign(privateKey);const sig=signature.toString('base64');const encodedSig = encodeURIComponent(sig);let config = {method: 'get',maxBodyLength: Infinity,url: `https://openapi.alipay.com/gateway.do?timestamp=${formattedDate}&method=${data.method}&app_id=${data.app_id}&sign_type=${data.sign_type}&sign=${encodedSig}&version=${data.version}&charset=${data.charset}&biz_content=${data.biz_content}`};axios(config).then(function (res) {qf_output={'data':res.data}});2.3.2. 解析配置2.3.3. 字段接收配置  

银企直联(中国银行)教程

在轻流实现中国银行的公对公转账,公对私转账,查询流水,获取电子回执单功能

1、落地方案

需要二次开发,由中间件根据中国银行银企对接接口规范要求,封装以下四个接口:
    1. 公对公转账
    2. 公对私转账
    3. 查询流水
    4. 电子回单查询
1.1 转账转账效果有两种:直接转出不提示,需要在中国银行app上确认,两种方式需要在银行柜台做变更
[caption id="attachment_14535" align="aligncenter" width="1728"] 转账时序图[/caption]

📚方案简述:

    • 在轻流发起转账,通过webhook携带三个参数访问中间件;
    • 中间件根据参数访问对应的前置机接口,前置机执行对应操作将转账消息加入银行队列
    • 根据转账的表现,银行执行转账操作时,会给中国银行app发送确认消息(或者直接转账成功,具体表现需要银行柜台进行修改)
 1.2 查询流水[caption id="attachment_14536" align="aligncenter" width="1500"] 查询流水时序图[/caption]

📚方案简述:

    • 查询银行流水为定时任务,根据业务需要可设置多久拉取一次
    • 拉取昨天和今天的流水数据,并在中间件解析成符合轻流要求的格式
    • 中间件通过QS被动将数据推送至轻流应用中,并比对更新
 1.3 电子回单查询[caption id="attachment_14537" align="aligncenter" width="1622"] 电子回单查询时序图[/caption]

📚方案简述:

  • 中间件访问回单下载接口后,前置机返回回单文件的名称
  • 银行生成请求时间段内的回单,回单为PDF文件,统一放在压缩文件内。
  • 中间件轮询是否已经生成回单文件,生成后将文件上传至对象存储服务,并返回文件的路径;
  • 中间件将返回的文件路径推送至轻流,并匹配至轻流上传附件字段。

🎉最终效果

  • 在轻流实现转账服务
  • 可在轻流应用中查询到流水和电子回单

⚠️备注

  • 银企直联属于银行系统,每年需要付款使用
  • 银行会提供前置机架构,所有对银行的请求都会先到前置机处理
  • 只有Windows的系统,不能云部署
  • 访问中国银行银企对接接口需要先签到,签到有效期为15分钟,可缓存登录状态
  
扫码联系轻流
相关推荐
  • 轻流AI解决方案让企业文档处理更高效,让制造业生产管控更智能

    轻流AI解决方案让企业文档处理更高效,让制造业生产管控更智能

    一边是合同、票据、送货单和技术文件不断涌入,业务人员仍在复制、核对与填表;另一边是制造现场的设备、物料、工艺和安全信息散在不同系统里。本文沿用原文的两条方案主线,梳理轻流如何用 AI 与无代码连接文档处理和生产管控,并说明企业落地时应先验证哪些业务条件。导语:一边是合同、票据、送货单和技术文件不断涌入,业务人员……

    2026-09-24
  • 生物检测数字化怎么做?嘉佑高标检测用AI让报告编制耗时减少80%

    生物检测数字化怎么做?嘉佑高标检测用AI让报告编制耗时减少80%

    上海嘉佑高标检测技术有限公司是一家生物检测 CRO 企业。本篇文章根据其数字化实践,梳理从客户需求、技术方案、报价、样品与试剂管理、实验执行、数据分析到检测报告交付的完整链路,说明企业为什么会在已有 OA、ERP 的情况下重新回到 Excel,以及如何通过轻流、AI、QingBuilder 和 QingClaw……

    2026-09-23
  • 用 WorkBuddy+轻流做客户管理,销售线索终于不再“躺平”!

    用 WorkBuddy+轻流做客户管理,销售线索终于不再“躺平”!

    用 WorkBuddy+轻流做客户管理,销售线索终于不再“躺平”!(附免费模板)客户数量不少,为什么到了月底复盘,还是回答不清楚:客户推进到哪一步了?报过价的客户有没有反馈?线索很多,为什么成交却不多?当线索、客户、跟进记录、报价单和订单分散在不同表格或系统里,数据并不是没有,而是没有形成一条能被持续追踪的销售……

    2026-09-20
  • 轻流AI又更新了:Skill Hub上线,定时任务、多场景会话及用户体系迎来全面升级

    轻流AI又更新了:Skill Hub上线,定时任务、多场景会话及用户体系迎来全面升级

    轻流AI又更新了:Skill Hub上线,定时任务、多场景会话及用户体系迎来全面升级我们已经越来越习惯让 AI 帮忙写内容、查资料、做总结。但真正进入企业业务后,大家想要的其实更多:AI 不只是回答问题,还要知道企业的方法、理解当前业务,并在合适的时间继续把工作做下去。这一次,QingClaw × QingBu……

    2026-09-20
  • 轻流业务专家团队上线 WorkBuddy,快来认识你“秋天的第一个专家”

    轻流业务专家团队上线 WorkBuddy,快来认识你“秋天的第一个专家”

    企业里真正棘手的事,往往不是没有人做,而是每个人都在同时处理太多角色:管理者要判断业务变化,计划人员要协调订单、库存与产能,采购人员要盯材料和供应商,市场人员要持续寻找增长机会。现在,轻流业务专家团队上线 WorkBuddy,让不同岗位都能找到懂业务、知现状、能协同的 AI 专家。

    2026-09-20
  • 2026年 6 款低代码系统选型指南

    2026年 6 款低代码系统选型指南
    导语低代码系统的选型,本质上是一次“能力与需求”的匹配。企业需要的不是功能最多的平台,而是在自身技术能力、业务场景和预算约束下,综合得分最高的那个。本文从五个核心维度出发,对 2026 年值得关注的 6 款低代码系统进行评测打分,帮助企业建立量化选型视角。评测框架选型前,先明确五个评估维度及权重:维度权重说明配……
    2026-08-03
  • 降本增效必看:一套模板搞定报销、预算、备用金全流程费控管理

    降本增效必看:一套模板搞定报销、预算、备用金全流程费控管理
    费用管理是企业日常运营的核心环节,贯穿于员工报销、部门请款、预算管控、备用金周转等每一项基础业务中。科学的费用管理不仅能保障企业资金安全,更能通过精准的成本把控实现降本增效,为管理层决策提供可靠的数据支撑。然而在实际操作中,多数企业的费用管理却深陷流程繁琐、效率低下的困境,成为制约企业发展的隐性阻碍。。企业费控……
    2026-08-03
  • 库存溯源难、合规无据?库存管理-先进先出 数字化管控一招破解行业痛点

    库存溯源难、合规无据?库存管理-先进先出 数字化管控一招破解行业痛点
    在当今全球供应链日益复杂的背景下,企业对库存管理的精细化程度提出了更高要求。特别是对于食品、医药、电子元器件等对保质期(效期)和生产批次极度敏感的行业,传统的“模糊化”库存管理模式已无法满足现代企业的合规与效率需求。如何确保货物“先进先出”,如何实现每一件产品从入库到出库的全生命周期追溯,成为企业提升核心竞争力……
    2026-08-03
  • 采矿行业数字化新标杆:AI+无代码让矿山管理安全又高效

    采矿行业数字化新标杆:AI+无代码让矿山管理安全又高效
    “像搭积木一样灵活构建系统,当它与真实的业务场景相碰撞,往往能产生意想不到的化学反应——从考勤打卡、设备管理到安全隐患整改,实现了全方位覆盖。 特别是我们打造的安全隐患管理系统,通过‘轻流无代码+AI大模型’打出了一套强有力的组合拳,这套解决方案目前在全国范围内都是没有的。”——阳山温榜山矿业有限公司 王总阳山……
    2026-08-03
  • 2026年专业的生产管理系统有哪些服务商

    2026年专业的生产管理系统有哪些服务商
    一、从"信息孤岛"到"数据贯通":制造企业的系统化升级趋势过去五年,生产管理系统的采购逻辑正在发生根本性转变。早期企业考虑的是"要不要上一套系统",而今的焦点已转向"如何让系统把业务真正串起来"。根据IDC《中国制造业数字化转型白皮书》(2025年,覆盖500家中型制造企业),超过65%的制造企业将"跨部门数据……
    2026-08-03
推荐产品
联系我们
扫码微信咨询
扫码关注公众号
咨询热线:400-000-5276
上海市闵行区沧源路1488号3楼轻流
免费注册
电话咨询
咨询热线
400-000-5276
微信咨询
微信客服