主题
退款与对账
一句话
退款从售后工单发起,不是在订单里直接点。对账页逐笔核每一分钱。
退款怎么发起
如果买家没走售后流程(比如电话里说要退),你可以代他建一个售后工单, 然后走同样的流程。这样有据可查。
⭐ 能退多少
基准是「实付金额」,不是商品原价
一个 $100 的商品,用了满减券实付 $90,能退的是 $90。
按原价退等于把优惠也退给买家 —— 你倒贴 $10。
系统已经按分摊后的实付金额算了,页面上显示的可退金额就是对的, 别自己心算然后填一个更大的数。
按件退也是精确的
100 分的商品 3 件,退完就是 100 分,不会因为 100 ÷ 3 变成 99.99。
部分退款
可以退一部分。系统会守住上限 —— 退过的加起来不会超过实付。
多次部分退款要留意手续费
支付平台的手续费通常不退,而且有些平台按笔收退款费。 分五次退 $10 可能比一次退 $50 贵。
退款要多久到账
| 通道 | 通常 |
|---|---|
| Stripe | 5~10 个工作日(原卡) |
| PayPal | 余额几分钟,原卡 3~5 个工作日 |
这个时间不由我们决定
是发卡行的处理时间。买家催的话如实告诉他, 并把退款单号给他去问自己的银行。
退款失败了怎么办
系统会显示失败原因
常见的:
- 支付单太老(有些平台限制退款窗口,比如 180 天)
- 支付平台账户余额不足(PayPal 余额不够时会从绑定的银行扣,可能失败)
- 原支付方式已失效
处理:先看平台后台的具体报错。实在退不了就线下转账给买家, 然后在售后工单里备注说明。
退款不会因为出错就"钱出去了而系统不知道"
调用第三方的动作是拆成三段各自提交的(占额 → 调用 → 回写), 不会因为某一步失败把"已建退款单"一起回滚。
所以就算显示失败,也先去平台后台确认一下是不是其实退成功了, 再决定要不要重试。
对账页
后台 → 订单管理 → 对账
| 列 | 说明 |
|---|---|
| 订单号 / 支付单号 | |
| 平台流水号 | 去 Stripe/PayPal 后台搜这个 |
| 金额 / 币种 | |
| 支付时间 | |
| 是否沙箱 | 测试单会标出来 |
| 退款金额 |
怎么核对
- 导出对账页的 CSV
- 从 Stripe/PayPal 后台导出同一时间段的流水
- 按平台流水号对
一定会有的差异
| 差异 | 原因 |
|---|---|
| 平台金额 < 我们记的 | 手续费 |
| 时间差一天 | 时区 |
| 平台有、我们没有 | 回调丢了 —— 见下 |
| 我们有、平台没有 | 沙箱单 |
⭐ 回调丢了怎么办
系统有主动查单补偿
平台重试耗尽、或者我们正好在重启,回调就可能丢 —— 后果是买家付了钱但订单被自动关单。
系统有一个定时任务会主动去平台查单,把这类订单救回来。 所以通常你什么都不用做。
还是有单对不上的话
在对账页找到那个订单,看它的支付单状态。 如果确认平台那边收到钱了而订单还是待付款,找技术手工处理 —— 不要自己把订单状态改成已付款(那样对不上账,而且没有支付流水号)。
常见问题
订单显示已付款但我在 Stripe 后台找不到
- 是不是沙箱订单(对账页有标记)
- 是不是走的另一个通道(PayPal)
- Stripe 后台的时间范围和时区
退过款的订单还能点发货吗
不能。系统会拦住 —— 售后没结案之前发货按钮是禁用的。
这一条是有意的:不拦的话全额退款后订单还停在「已付款」, 运营一点发货就是货钱两失。