惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

N
News and Events Feed by Topic
S
Security @ Cisco Blogs
S
Secure Thoughts
Attack and Defense Labs
Attack and Defense Labs
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Hacker News - Newest:
Hacker News - Newest: "LLM"
Recent Commits to openclaw:main
Recent Commits to openclaw:main
H
Hacker News: Front Page
博客园 - 叶小钗
H
Heimdal Security Blog
Microsoft Security Blog
Microsoft Security Blog
Forbes - Security
Forbes - Security
AI
AI
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
T
Troy Hunt's Blog
罗磊的独立博客
Application and Cybersecurity Blog
Application and Cybersecurity Blog
爱范儿
爱范儿
GbyAI
GbyAI
The Last Watchdog
The Last Watchdog
TaoSecurity Blog
TaoSecurity Blog
C
CXSECURITY Database RSS Feed - CXSecurity.com
D
DataBreaches.Net
Recent Announcements
Recent Announcements
Schneier on Security
Schneier on Security
C
Cisco Blogs
美团技术团队
D
Docker
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
WordPress大学
WordPress大学
月光博客
月光博客
雷峰网
雷峰网
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
H
Hackread – Cybersecurity News, Data Breaches, AI and More
A
Arctic Wolf
B
Blog RSS Feed
Cisco Talos Blog
Cisco Talos Blog
C
Cybersecurity and Infrastructure Security Agency CISA
V
Vulnerabilities – Threatpost
V2EX - 技术
V2EX - 技术
Y
Y Combinator Blog
N
News and Events Feed by Topic
www.infosecurity-magazine.com
www.infosecurity-magazine.com
W
WeLiveSecurity
Security Archives - TechRepublic
Security Archives - TechRepublic
G
GRAHAM CLULEY
Jina AI
Jina AI
Hugging Face - Blog
Hugging Face - Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
The Hacker News
The Hacker News

人人都是产品经理

为什么你的产品找不到差异化?90%的失败都卡在第一步上(下) – 人人都是产品经理, 3年从30万到1300万用户、获2200万美元融资,这个AI教育产品用“抽卡”破解了获客难题 – 人人都是产品经理, 园区招商系统怎么做才能真正帮到去化?我加了这一个功能,推广链接转发400次阅读过万 – 人人都是产品经理, AI大事件:OpenAI发完网络安全模型又搞药物研发,小鹏汽车要抓”DeepSeek时刻” – 人人都是产品经理, 电商不是卖货,是一场更残酷的产品经理实战 – 人人都是产品经理, 没想到,活动营销又回来了! – 人人都是产品经理, 为何All-in海外KOC:一场关于AI时代窗口期的豪赌 – 人人都是产品经理, 重新理解企业的内部协作 – 人人都是产品经理, 苹果的 AI 战略到底是什么? – 人人都是产品经理, 医疗智能体·第2讲——合规护城河:等保、PIPL与HIPAA的架构实战 – 人人都是产品经理, 向量知识库五步法:从“答非所问”到“精准回复” – 人人都是产品经理, 鸿蒙PC三方库构建总指挥HPKBUILD(sha)库为例 – 人人都是产品经理, 何时该用LLM?AI产品经理的LLM设计指南 – 人人都是产品经理, 医疗信息领域的需求方、决策方、准入方以及关注点(二) – 人人都是产品经理, 即梦涨价:一场被误读的「傲慢」 – 人人都是产品经理, 面试AI PM必答题:Hermes和OpenClaw的区别,如何讲清楚业务价值 – 人人都是产品经理, AI的下一张船票:世界模型——AI产品经理必须理解的技术拐点 – 人人都是产品经理, 小红书做GEO,怎么让AI信你?记住这 3 个重要信息 – 人人都是产品经理, 5 家印度 AI 初创公司,看看印度 AI 再做什么 – 人人都是产品经理, AI项目跨团队协作:产品技术业务如何不打架 – 人人都是产品经理, Agentic Workflow(智能体工作流):让AI从”答案生成器”变成”数字员工” – 人人都是产品经理, lycium_plusplus 项目全景解读:OpenHarmony 三方库构建的“大管家” – 人人都是产品经理, 从爆单救火到前置履约:两套预采策略,把生鲜大促履约效率拉满 – 人人都是产品经理, 什么时候该补货?我用一轮数据做了一个决定 – 人人都是产品经理, 从“机械兜底”到“动态分流”:AI客服重复进线治理的4大底层逻辑 – 人人都是产品经理, 抖音拼效率,红书拼洞察 – 人人都是产品经理, 全民狂欢与退潮——为什么龙虾这波热潮冷却得如此之快? – 人人都是产品经理, Stripe押注!MPP重塑全球支付 – 人人都是产品经理, 小红书GEO:AI引用你的内容,不是因为你对,而是因为你看起来可信 – 人人都是产品经理, 前百度副总裁押注办公Agent,日韩付费爆发,Manus迎来强劲对手 – 人人都是产品经理, 企事业单位数字化的业务供需本质 – 人人都是产品经理, 医疗智能体·第1讲——医疗信息化重构:从“辅助软件”到“自主智能体”的范式转移 – 人人都是产品经理, 粉丝量就是空气!!! – 人人都是产品经理, 用户说“薯片碎了”,机器回“要买吗?”:意图识别的翻车与破局 – 人人都是产品经理, RAG召回准确率从75到90 我做对了这三件事 – 人人都是产品经理, AI大事件:Anthropic改收费、OpenAI发安全版、手术机器人纳入医保、阿里发布”秒悟” – 人人都是产品经理, Chrome 推出 Skills 新功能,Agent 重塑上网方式 – 人人都是产品经理, GitHub前创始人拿了a16z的1700万美元,做Agent时代的Git – 人人都是产品经理 拷贝或克隆其他 Flutter OH 项目到本地后无法运行 – 人人都是产品经理, 优惠券设计:优惠券创建 – 人人都是产品经理, 不用死磕文档!AI 助手 1 小时搞定飞书 CLI 安装 + 配置 + 知识库 – 人人都是产品经理, 用小龙虾做竞品分析报告:从2天到20分钟,我是怎么做到的 – 人人都是产品经理 用小龙虾做市场分析报告:搞懂这3个公式,市场规模不再靠猜 – 人人都是产品经理, 你早就在做 Harness 工程,只是不知道它叫这个名字 – 人人都是产品经理, Think Long就够?你可能想多了! – 人人都是产品经理, 货代SRM实战:供应商准入怎么做,才能让资源池不是通讯录而是可交付网络? – 人人都是产品经理, 如何做好用户调研?详解基本技巧 – 人人都是产品经理, 木鸟、途家、美团对打,平台春天行动开“卷” – 人人都是产品经理, 入职才发现公司不靠谱?小红书从业者求职避坑指南 – 人人都是产品经理, 美国 AI 三巨头联手封堵,中国 AI 突围之路在何方 – 人人都是产品经理, 小红书,放在需求对面的镜子 – 人人都是产品经理, AI 会带来大规模失业吗? – 人人都是产品经理, 从出单到补货前,我第一次犹豫:该不该放大? – 人人都是产品经理, Flutter 三方库鸿蒙化适配:5 种高效检查方式,快速判断是否需要适配 – 人人都是产品经理, 从做产品进阶拿结果:医美机构产品经理转岗科室运营经理 – 人人都是产品经理, 阿里HappyHorse,一场关于“Token经济”的阳谋 – 人人都是产品经理, To B AI:客户留存落地的观察与思考 – 人人都是产品经理, AI产品的“生命线”——数据采集、标注、清洗的产品化设计 – 人人都是产品经理, 谈谈AI Agent(二):当“孩子”能自己“体验世界”时,你该学什么? – 人人都是产品经理, UI/UX设计师的3层能力进阶,前两层让你活下来,第三层…才是真正的分水岭 – 人人都是产品经理, 2分钟 → 30秒,效率提升75%:B端产品经理如何用「规则枷锁」驯服AI幻觉? – 人人都是产品经理, 还没来得及学OpenClaw,来了个更猛的:Hermes Agent – 人人都是产品经理, AI日报:宇树机器人跑出10m/s刷新世界纪录 – 人人都是产品经理, 一文说透基金互金如何用情绪价值引导用户决策做转化 – 人人都是产品经理, 当浏览器开始替你”看”网页:AI 浏览器正在亲手拆掉它脚下的那张网 – 人人都是产品经理, 0代码,一天时间我Vibe Coding了个网站 – 人人都是产品经理, Hermes 和 OpenClaw 之争,Agent 的能力应该“装上去”还是“长出来”? – 人人都是产品经理 视频生成的“桌子”,字节Seedance 2掀完,阿里快乐马掀 – 人人都是产品经理, 从听不懂到完全信任:我的 Codex 深度产品体验 – 人人都是产品经理, 当虚拟偶像有了北京户口,与真人偶像还有什么区别? – 人人都是产品经理, 会说,远远比会做更重要 —— 对 SBTI 爆火现象的五层观察 – 人人都是产品经理, AI产品经理必看:当“搭环境”比“选模型”更重要,你的认知还在2024年吗? – 人人都是产品经理, 2026年AI产品商业化核心逻辑:从功能demo到规模化营收的3个必破卡点 – 人人都是产品经理, 京东围绕供应链,卷起裤腿下场的那些事儿 – 人人都是产品经理, SBTI一夜刷屏:它赢在了“太会说人话” – 人人都是产品经理, 折扣零售的真相:不是便宜,而是价值感! – 人人都是产品经理, 和甲方吵了一架,最后加钱做了——我学到的ToB产品经理生存法则 – 人人都是产品经理, 和几位小红书操盘手聊了8小时,干货全在这 – 人人都是产品经理, 智谱GLM-5.1登场,开源模型首超Opus4.6!!! – 人人都是产品经理 Anthropic收入凭什么反超OpenAI,终于有人把这事说清楚了 – 人人都是产品经理, 史上最有故事感的技术报告——Claude最强模型Mythos 7个极其精彩的细节 – 人人都是产品经理, 模型不是壁垒,Harness 也不是 – 人人都是产品经理, 抖音本地生活业务思考21 – 人人都是产品经理, Superpowers:145k Star的AI编码框架,到底是什么来头? Superpowers:145k Star的AI编码框架,到底是什么来头? – 人人都是产品经理, OpenAI 的路走错了,Anthropic Harness 解法启示:模型需要实践专科生 – 人人都是产品经理, 画原型图的前一步:设计站点地图 – 人人都是产品经理, 给 DeepSeek 的最后一封催更信 – 人人都是产品经理, 手把手教你用 Claude Code 搭建 AI 营销团队:5 个 Agent、12 项技能,独立完成研究、写作、设计全流程 – 人人都是产品经理, 你以为大模型在学语言?不,它在重新发明语言学 – 人人都是产品经理 所谓Skill,不过是AI时代的工业垃圾 – 人人都是产品经理, 聊一聊内容传播的几个方法 – 人人都是产品经理, 当平台开始吃掉生态:从 OpenClaw 被封杀,读懂 Anthropic 的这盘棋 – 人人都是产品经理, 你装了 10 个 AI 插件,Obsidian 还是一个文件夹 – 人人都是产品经理 关于AI智能体架构演进的系统性思考:从单体试水到多体协同的重构 – 人人都是产品经理, 当“人”变成Skill,我们又该何去何从? – 人人都是产品经理 Mythos 事件:前沿 AI 治理的意外实验 – 人人都是产品经理, 货代CRM:信用与风险管理怎么做,才能把坏账风险拦在放货之前? – 人人都是产品经理, 从HR收集自拍照到员工自助录入——我见证了园区人脸识别从”不可用”到”真好用”的全过程 – 人人都是产品经理 千问闯关AI混沌期:阿里画靶,吴嘉张弓,马云射箭? – 人人都是产品经理,
支付流程设计常见问题及最佳实践
隐墨星辰 · 2025-01-09 · via 人人都是产品经理

在实际操作中,支付流程常常面临诸多问题。本文将深入探讨支付流程设计中的常见问题及其最佳实践,供大家参考。

今天聊一下支付流程设计的一些常见总是及最佳实践,包括:

组合支付要不要拆支付流水,前端轮询查哪个域,查询要不要穿透到外部渠道,为什么要做同步受理异步处理,支付补偿怎么做,如何防重复支付,万一重复支付了怎么做,支付成功后用户关单了怎么做,返回码怎么映射,支付要不要做系统自动重试,支付渠道如何做隔离。

一、组合支付要不要拆支付流水

当然拆。不拆能不能做?也是可以做,但是坏处很多。有更优解的情况下,我们要选择更优解。

每一种支付方式都有自己的特性,包括但不限于支付金额、支付时间、状态等,如果放在一笔支付单,如何表达得清楚?

这里还有一个分层的概念,就是面向商户的是收单域,生成的是交易单,交易单下面可以挂一个主支付单,这个支付单是支付域的,一个支付单下面挂多个支付流水,一个支付方式就生成一笔支付流水。

由支付域来负责多个支付方式的组合,以及主支付单的推进。

二、前端轮询查哪个域

有人查收单域,有人查支付域。

我的观点是查收单域。因为收单是针对商户的,商户的订单成功了,才算成功。有时候可能内部出现故障,导致支付域成功但收单域没有成功,还有可能订单因为超时或用户主动操作已经关闭,这个时候支付域哪怕成功,也需要给用户退回去。

如果是用户充值,就以资金产品域为准。

为避免对收单域的数据库造成过大压力,建议加一层缓存。

标准收银台和前置收银台又有一点不一样。上面说的是前置收银台的情况。

三、查询要不要穿透到外部渠道

很多人喜欢直接把查询穿透到外部渠道,比如用户提交支付后,在收银台页面转菊花,收银台页面会有一个定时任务高频查询后端的支付结果,这个查询请求链路:收银台页面->收银台后端->收单域->支付域->渠道网关域->外部渠道。

如果一旦网络抖动或外部渠道抽风,返回耗时增加,就会快速把内部应用的线程全部耗尽,极易引发雪崩。有兴趣的可以翻翻公众号前段时间发布的关于雪崩的超级故障。

正确的做法:

收银台只查自己的缓存,支付域有新数据后,更新到缓存,比如支付成功,或者需要跳到核身验证页面。

四、为什么要做同步受理异步处理

原理和上面的查询不要穿透到外部渠道是一个道理,如果一旦网络抖动或外部渠道抽风,返回耗时增加,就会快速把内部应用的线程全部耗尽,极易引发雪崩。

正确的做法:同步受理商户的请求后,马上返回给商户,然后再异步处理,发送给渠道。

是不是每个域都做同步受理异步处理?也不是,那样就太复杂了。

可以选择在收单域做,也可以选择在渠道网关域做。推荐在渠道网关域做,因为外部渠道的耗时最不可控,大不了多部署几台网关,多开些线程。还有一个情况,比如只需要扣余额,那就直接毫秒级扣完返回给商户,简单实用。

如果一定要选择所有域都做,那也是个人的自由。但强烈不建议全部同步调用出去。

五、支付状态补偿怎么做

支付发出后,有四种情况可以获得支付的结果:

  1. 渠道接口实时返回渠道处理的结果。
  2. 渠道异步通知支付平台。
  3. 支付平台使用定时任务梯度时间查询渠道支付结果。
  4. 拿到渠道对账文件。

时效性而言,依次递减,但也不是绝对的,有时候会出现渠道异步通知比接口实时返回还要快。这个时候一定要设计好状态机,否则很容易出现异步结果已经推进成功,实时接口又推进到支付中。

定时查询查询一定要用梯度,一方面减少自己平台和渠道压力,同时又能获得最好的时效性,比如间隔时间:1秒,2秒,5秒,10秒,20秒,40秒,100秒 … … 查到n次就不查了。再查下去也没有意义,就等渠道文件对账好了。如果渠道的对账文件是支付成功,但是平台支付已经关闭订单,那就走差错给用户退回去就好。

六、如何防重复支付

重复支付在很多公司都出现过,强大如支付宝,也时不时爆出大批量的重复支付。

首先是接口要有幂等设计。幂等的设计也有很多种方式,有人喜欢使用redis分布式锁,我个人是反对的,起码也要使用数据库唯一索引。单机房使用唯一索引就够,如果全球多活怎么办?还得有一个全局幂等组件。具体怎么设计,可以在公众号里找下:支付幂等设计与最佳实践。

但是,幂等设计是基于商户不换号的情况下,如果商户换号重发,就防不住,怎么办?最好是基于用户的维度做个判断,比如同一个用户,在短时间(比如1分钟),已经存在相同金额的支付单,就给用户提示:“当前已经有一笔xx金额的订单,是否仍然支付?”。虽然不能完全避免,但是可以减少。

七、万一重复支付了怎么做

前面有提出防重复支付,但是万一真出现重复支付了怎么办?

没有什么好办法,原路退回就是。

这也是我们为什么在前面把交易单和支付单区分出来的原因。各是各的单,出现问题好处理。

还有一个问题,如何发现内部有大批量的重复支付?总不能全部等客诉吧?后面有时间再聊聊支付平台内部多域之间实时两两对账。

八、支付成功后用户关单了怎么做

不仅是重复支付后需要原路退回,如果渠道扣款成功,但是我们的订单已经关闭(超期关闭,用户主动关闭等),都需要做原路退回。

这里还可以引申出另外一个问题,为什么记账的时候,有一个“商户待结算户:,还有一个“支付网关过渡户”。如果没有支付网关过渡户,支付成功,钱直接到了商户待结算户,但是如果收单域的订单已经关闭,这笔钱就不应该进入到商户待结算户里去,而是应该直接从支付网关过渡户给用户退回去。

九、返回码怎么映射

对于支付来说,不要轻易推进到成功,只有渠道非常明确地说,某个返回码代表成功,才能推进成功。否则很容易出现资损。

当然也不要轻易推进失败,也只有明确失败才能推进失败,否则用户支付成功被推进失败,容易引起客诉。

尤其要注意的是,有很多渠道有两级返回码,要区分如何组合使用。还有,查询接口一定要区分通信成功和业务成功,只能通过业务成功来推进状态。

更详细的说明,可以翻翻公众号的文章;返回码映射设计与最佳实践。

十、支付要不要做系统自动重发

网络经常超时,如果用户发起支付,超时了,再次重试,就会成功,那到底要不要系统自动重试呢?建议根据自己的业务场景和团队的技术实力选择。

业务场景,比如代扣,一定要系统自动重试,包括余额不足,超时等场景都需要重试。余额不足再换个支付方式或换张卡再试,超时多次查询都返回“订单不存在”,那也需要系统自动重试。

如果是普通的支付,那看团队是否能做到避免重复扣款,如果能,那就系统自动重试,提高成功率。给一个思路:特定的返回码 + 指定时间内查询都是返回“订单不存在”。

十一、支付渠道如何做隔离

有人喜欢为每一个渠道都编写独立的代码,美其名曰:“隔离性好”,一个渠道有问题不影响另外一个。

我却觉得技术和架构能力需要提高。渠道接入四个层次:

  1. 为每个渠道写独立的代码。
  2. 抽象出模板方式,每个渠道只需要写特定的代码,比如报文组装、签名验签。流程由模板方法驱动。
  3. 配置文件接入渠道。把渠道的处理分解成多个子能力,通过配置文件驱动。
  4. 直接在后台页面配置映射就能接入。

只要领域抽象能力强,技术过硬,哪怕做到第四层,仍然可以做到很好的隔离。比如通过外部渠道分配的商户号,隔离出不同的配置,不同的渠道配置不同的参数,自动化测试回归,保存历史报文用于自动化MOCK测试等。质量仍然是上乘的,隔离性也完全没问题。

本文由人人都是产品经理作者【隐墨星辰】,微信公众号:【隐墨星辰】,原创/授权 发布于人人都是产品经理,未经许可,禁止转载。

题图来自Unsplash,基于 CC0 协议。