Files
uniprop-manual/prop-acc/scenarios/adhoc/flow-b-miniapp-alipay.md
Willie 35c0147a7b P3.5: prop-acc 启用子模块嵌套(adhoc/),应对大型业务域扩展
背景:
单纯按 UDAS 严格扁平,prop-acc/scenarios/ 装齐 7 子模块后预计 100-150
篇 .md 单一文件夹,Explorer 无法浏览、Quartz folder page 无法阅读。

扩展规则(已写入 SKILL.md 多域章节 + multi-domain.md 第 10 节):
- 单类型文件夹文件数 > 30 且能按业务子模块分组时,启用嵌套
- 路径:<domain>/<type>/<sub-feature>/<file>.md
- 文件名去 <sub-feature>- 前缀(路径已表达)
- title 三段式:<domain> · <sub-feature> · <名>
- frontmatter 新增 sub_feature 字段(便于 RAG 过滤)
- 跨子模块文档落在 <domain>/<type>/(不进子文件夹),与"跨域→cross/"对称

本次迁移:
- prop-acc/concepts/adhoc-*.md (3)  → prop-acc/concepts/adhoc/*.md
- prop-acc/scenarios/adhoc-*.md (25) → prop-acc/scenarios/adhoc/*.md
- 每个文件:title 加 adhoc 段、aliases 追加旧 prop-acc · 前缀形式(兼容)、
  新增 sub_feature: adhoc 字段

WikiLink 解析未受影响:
- 既有 [[场景-A流-...]] 等 200+ 引用通过 aliases (含旧 basename) 解析
- 新引用可用 [[adhoc · 前台购买 IC 卡]] 或 [[prop-acc · adhoc · 前台购买 IC 卡]]
- 各域 knowledge-map.md 内 WikiLink 全部仍有效

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-25 20:55:59 +08:00

4.9 KiB

title, aliases, tags, audience, status, sub_feature, last_review, code_version
title aliases tags audience status sub_feature last_review code_version
prop-acc · adhoc · 场景 - B 流 - 小程序下单 + 支付宝
prop-acc · 场景 - B 流 - 小程序下单 + 支付宝
场景 - B 流 - 小程序下单 + 支付宝
场景-B流-小程序下单+支付宝
场景
prop-acc
一次性收费
业务场景
B流
业户
业务人员
已发布 adhoc 2026-05-25 2026-05-22

场景:小程序下单 + 支付宝

业户在小程序内下单,用支付宝(而非微信) 完成支付。

[!info] 几乎与微信流程一致 这个场景与 场景-B流-小程序下单+微信支付 99% 相同。本文档只描述两种支付渠道的差异

业户视角

与微信支付流程的区别

维度 微信支付 支付宝
入口 微信小程序内拉起微信支付 微信小程序中通过 H5 跳转支付宝(或扫支付宝二维码)
跳转体验 流畅(同一应用内) 略多 1-2 步(跨应用)
适用业户 偏年轻用户、华南地区 全国通用、商务用户更习惯
商户费率 0.2-0.6% 0.55%
回调速度 秒级 秒级(偶尔几十秒)

业户实际操作

  1. 在小程序选项目下单(完全相同)
  2. 提交后选择"支付宝支付"
  3. 微信小程序提示:"即将跳转到支付宝完成支付"
  4. 点确认 → 自动跳转支付宝 App
  5. 输入支付宝密码 / 指纹完成支付
  6. 自动跳回小程序,显示支付成功

[!success] 完成 跨应用跳转 → 回跳整个过程通常 < 10 秒。

业务人员视角

与微信流程的唯一区别:对账

[!warning] 月底对账要分账户

  • 微信支付的款进物业微信商户号
  • 支付宝的款进物业支付宝商户号

两个商户号一般绑定两个不同的银行账户。月底对账时,要分别拉两边的流水。

在 Filament 后台,CollectionOrder.payment_channel 字段区分了不同支付方式:

collection_orders
├── payment_channel: "微信支付" → 对账走微信流水
└── payment_channel: "支付宝"   → 对账走支付宝流水

财务月底查询:

-- 微信渠道
SELECT SUM(actual_amount) FROM acc_collection_orders
WHERE collection_completed_at BETWEEN '2026-05-01' AND '2026-05-31'
  AND payment_method LIKE '%微信%';

-- 支付宝渠道
SELECT SUM(actual_amount) FROM acc_collection_orders
WHERE collection_completed_at BETWEEN '2026-05-01' AND '2026-05-31'
  AND payment_method LIKE '%支付宝%';

详见 场景-审计-月底现金对账

系统流程

sequenceDiagram
    participant 业户
    participant 小程序
    participant 系统
    participant 支付宝

    业户->>小程序: 下单,选支付宝
    小程序->>系统: POST /api/ad-hoc-events
    系统-->>小程序: 订单号 CO-xxx + 支付宝拉起参数

    Note over 小程序,支付宝: 跨应用跳转
    小程序->>支付宝: 拉起支付(H5/SDK)
    业户->>支付宝: 密码 / 指纹
    支付宝->>系统: POST /webhook/alipay
    系统->>系统: MarkAdHocEventPaidAction (payment_channel='支付宝')
    系统->>系统: 同微信流程,翻 Completed + 生成 Receipt
    系统-->>小程序: 推通知

    支付宝-->>业户: 跳回小程序
    小程序-->>业户: 显示已付款

常见问题

[!question] 业户没装支付宝怎么办? 微信小程序内拉起支付宝要求业户手机里装了支付宝 App。没装的话会失败。变通方案:让业户选微信支付,或换 场景-跨渠道补缴 现金/POS。

[!question] 支付宝跳转回小程序失败怎么办? 这种情况钱已经扣了但小程序没显示成功。支付宝有"支付成功通知" 推送给业户,业户在支付宝里能看到。系统的支付宝回调一般 30 秒内能到,让业户等等,不要重复支付。

[!question] 为什么不直接做支付宝小程序? 单独做一个支付宝小程序意味着双套代码,运营也要双倍发文章。等业户群超过 30% 用支付宝时再考虑。当前微信小程序 + 跳转支付宝是最划算的方案。

[!question] 业务人员能在后台手动加一笔"支付宝退款"吗? 当前不在 UI 暴露(同微信)。退款流程:

  1. 业户申诉
  2. 业务人员去支付宝商户后台手动发起退款(支付宝平台操作)
  3. 在 Filament 后台对应订单走 场景-已收款作废 标记

等支付网关 webhook 上线后,可以自动化。

相关概念

异常分支

  • 支付完成但小程序卡死 → 系统会按 webhook 数据为准,后台可见已收款
  • 想取消未付订单 → 场景-取消-业户改主意主动撤单