vault backup: 2026-05-25 22:27:38
This commit is contained in:
146
prop-acc/scenarios/deposit/refund-with-payment-channel-switch.md
Normal file
146
prop-acc/scenarios/deposit/refund-with-payment-channel-switch.md
Normal file
@@ -0,0 +1,146 @@
|
||||
---
|
||||
title: prop-acc · deposit · 场景 - 退款渠道与缴款渠道不同
|
||||
aliases:
|
||||
- 退款换渠道
|
||||
- 现金缴款银行转账退
|
||||
- refund-with-payment-channel-switch
|
||||
- 场景-押金退款换渠道
|
||||
tags:
|
||||
- 场景
|
||||
- prop-acc
|
||||
- 保证金
|
||||
- 退款
|
||||
audience:
|
||||
- 业户
|
||||
- 业务人员
|
||||
status: 已发布
|
||||
sub_feature: deposit
|
||||
last_review: 2026-05-25
|
||||
code_version: 2026-05-22
|
||||
---
|
||||
|
||||
# 场景:退款渠道与缴款渠道不同
|
||||
|
||||
业户当初**现金缴款**,现在想**银行转账退**(或反之)。系统支持渠道切换 —— `PaymentChannel` 在退款时独立选择,不绑死缴款时的渠道。
|
||||
|
||||
## 典型情境
|
||||
|
||||
> [!example] 真实情境(一)
|
||||
> 张阿姨当年装修来交押金时**带的现金 ¥5,000**,留下了银行卡号。现在装修完无损要退,张阿姨说"现金我也不方便领,直接转我卡上吧"。
|
||||
|
||||
> [!example] 真实情境(二)
|
||||
> 王装修公司当年**对公账户转账**交了 ¥15,000(3 户业主代缴)。退款时公司账号变更,要退到**新的对公账号**。
|
||||
|
||||
## 业户视角
|
||||
|
||||
### 第 1 步:告诉物业退款方式
|
||||
|
||||
退押前**主动说明**期望的退款渠道:
|
||||
|
||||
- "退到我微信"
|
||||
- "退到我建行卡 6228xxxxxx1234"
|
||||
- "退到我公司新账户" + 提供新账户信息
|
||||
|
||||
### 第 2 步:等退款 + 收到红字收据
|
||||
|
||||
红字收据上的"退款渠道"字段反映**实际操作的渠道**(银行转账 / 微信),与缴款时的不同。例如:
|
||||
|
||||
- 缴款 Receipt:"装修保证金缴纳 ¥5,000(现金)"
|
||||
- 退款 Receipt:"装修保证金退还 ¥-5,000(银行转账)"
|
||||
|
||||
> [!info] 系统不强制原路返回
|
||||
> 不像信用卡退款"必须原卡原路退",押金退款可以**任意渠道**,只要业务方同意。
|
||||
|
||||
## 业务人员视角(物业财务)
|
||||
|
||||
### 第 1 步:打开账户做退款
|
||||
|
||||
同 [[refund-full-no-damage|无损全额退还]] 流程,在 `RefundAction` Modal 表单里:
|
||||
|
||||
| 字段 | 填什么 |
|
||||
|---|---|
|
||||
| 退款金额 | 全额或部分 |
|
||||
| **退款渠道(PaymentChannel)** | **关键!** 选当前业户指定的方式,不要被原缴款渠道误导 |
|
||||
| 收款银行账户 | 若选银行转账,填**回款用的物业付款账户**(不是业户账户) |
|
||||
| 备注 | 推荐写"原现金缴,退银行转账" 提示后续审计 |
|
||||
|
||||
> [!warning] PaymentChannel 选错的后果
|
||||
> - 选错只影响后续线下退款操作和审计追溯,不影响系统资金流
|
||||
> - 但建议**事前与业户确认**,事后改字段是没法的(`DepositTransaction` 不可变)
|
||||
|
||||
### 第 2 步:走线下退款流程
|
||||
|
||||
按选定的渠道实际转账:
|
||||
|
||||
| PaymentChannel | 线下动作 |
|
||||
|---|---|
|
||||
| 微信 | 用物业微信账号给业户转 |
|
||||
| 银行转账 | 导出转账指令,银行办理 |
|
||||
| POS | 在 POS 机上做退款(注意:**只能退到原 POS 卡**,不适合渠道切换) |
|
||||
| 现金 | 业户到前台领现金 |
|
||||
|
||||
### 第 3 步:给红字收据
|
||||
|
||||
收据的"退款渠道"字段会反映实际操作渠道,业户能看到。
|
||||
|
||||
## 系统视角
|
||||
|
||||
退款的 `CollectionOrder.payment_channel_id` 字段**独立于**缴款 CollectionOrder 的同字段。
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
A[缴款 CO #1<br/>payment=现金<br/>actual=+5000] -.关联.-> B[DepositAccount<br/>balance=5000]
|
||||
B -.关联.-> C[退款 CO #2<br/>payment=银行转账<br/>actual=-5000]
|
||||
B --> D[balance=0, Closed]
|
||||
```
|
||||
|
||||
每张 CO 各自记录自己的支付渠道,不互相影响。审计时看 2 张 CO 就知道"原现金,退银行转账"。
|
||||
|
||||
## 字段映射(渠道切换涉及的所有字段)
|
||||
|
||||
| 字段 | 缴款时(CO #1) | 退款时(CO #2) | 是否必须一致 |
|
||||
|---|---|---|---|
|
||||
| `payment_channel_id` | 现金 | 银行转账 | ❌ 独立 |
|
||||
| `bank_account_id` | NULL(现金不需要)| 物业银行账户 | ❌ 独立 |
|
||||
| `actual_amount` | +5000 | -5000 | ❌ 相反符号 |
|
||||
| `community_id` | 物业项目 | 同 | ✅ 必须 |
|
||||
| `community_user_profile_id` | 张阿姨 | 同 | ✅ 必须(若业户账户)|
|
||||
|
||||
## 常见问题
|
||||
|
||||
> [!question] 业户没提供银行卡能不能退?
|
||||
> 不能退。退款必须有**可执行的回款渠道**。如果业户失联无法联系,走 [[force-close-retain|资金保留并关账]] 路径:账户翻 Closed,资金记入 `meta.balance_held_*` 审计字段,留待业户回来再操作。
|
||||
|
||||
> [!question] POS 缴款想退到银行卡可以吗?
|
||||
> 看 POS 机和银行政策。一般 POS 退款必须原卡原路退。如果业户想换卡:
|
||||
> - 方案 1:在 POS 机上做"原卡退款",业户收到后自行转去新卡
|
||||
> - 方案 2:走"虚拟"现金退款 —— 系统记 PaymentChannel=现金,实际走对公转账业户新卡(需财务有完整凭证支撑)
|
||||
> - 推荐方案 1,合规度高
|
||||
|
||||
> [!question] 退款渠道与缴款渠道不一致会触发什么审计风险?
|
||||
> 主要风险:**洗钱嫌疑**(虚假交易、套现等)。审计抽查会重点看这类"换渠道"的退款,要求物业留下:
|
||||
> - 业户书面要求换渠道的依据(签字 / 微信记录截图存档)
|
||||
> - 物业内部审批记录
|
||||
> - 银行流水回单
|
||||
>
|
||||
> 系统只保证账面记录正确(红字 CO + 渠道字段),合规凭证靠物业流程保障。
|
||||
|
||||
> [!question] 公司账户变更了,如何确保打到新账户?
|
||||
> 退款前更新 `DepositAccount.payer_contact` 字段(纯参考性,不影响支付),并在 Modal 表单"备注"清楚写明"新对公账号:xxx"。线下转账时财务按这个备注操作。
|
||||
|
||||
> [!question] 部分渠道(微信 / POS)有退款金额上限吗?
|
||||
> 微信单笔退款 / POS 单日上限由对应支付网关决定,系统不限制。如超限,实际线下转账需分多笔或走银行转账,但**系统记录上仍是一张 Receipt**(单笔退款流水)。
|
||||
|
||||
## 异常分支
|
||||
|
||||
- 业户失联无法退款 → [[force-close-retain]]
|
||||
- 退款触发支付网关失败(微信渠道异常等)→ 当前系统不处理回调,需财务沟通业户后线下补救
|
||||
- 业户拒绝任何退款方式 → [[freeze-during-dispute]] 冻结调解
|
||||
|
||||
## 相关文档
|
||||
|
||||
- [[refund-full-no-damage]]
|
||||
- [[refund-partial-after-forfeit]]
|
||||
- [[force-close-retain]]
|
||||
- [[deposit-on-behalf-by-company]]
|
||||
- [[red-receipt-design]]
|
||||
Reference in New Issue
Block a user