站点后台
收钱:支付、流水与提现
顾客的钱怎么进来、怎么退回去,会员的钱怎么打出去。支付设置开店前配一次,交易流水与会员提现是每天要看的两页——本章按这三件事发生的顺序,把每个按钮的后果讲清楚。
三个页面,两种节奏
和钱有关的操作分在站点后台的两处,分法不是随意的:配一次的东西在「设置」门里,每天要看的东西在「交易」组里。
| 页面 | 在哪 | 什么时候用 |
|---|---|---|
| 支付设置 | 设置 → 支付设置 | 开店时配一次:填商户凭证、打开开关。换商户号或加新支付方式时才回来 |
| 交易流水 | 交易 → 交易流水 | 每天看:每一笔支付、充值、退款的明细,退款也从这里发起 |
| 会员提现 | 交易 → 会员提现 | 每天看:审会员的提现申请、核对收款账户、打款 |
所以「设置」那扇门平时是不用进的。真正要天天打开的只有「交易」下面这两页,加上站点概览顶部那条待办带——有事它会主动把你叫过去。
顾客在收银台看到什么
任何要收钱的业务——商城下单、余额充值、开付费会员——都不自己做支付,而是把这笔钱交给统一收银台,由收银台决定给顾客列出哪几种付款方式。它按这几条依次过滤:
- 余额支付不用配任何东西,也和顾客用什么客户端无关。唯一的例外是「余额充值」——那类交易永远不列余额,不能用余额买余额。
- 第三方方式必须在支付设置里启用、且凭证填全,否则不出现在收银台,也无法绕过收银台下单。
- 要看客户端能不能真的拉起它:微信支付只在微信小程序、公众号、H5、电脑扫码与 App 里出现;支付宝只在支付宝小程序、H5、网页与 App 里出现。所以在微信小程序里看不到支付宝是对的,不是你漏配了。
- 每类业务自己声明能收哪些方式。同一个站点,商城订单和余额充值的付款方式列表可以不一样。
- 插件带来的支付方式跟着插件走:站点把插件关掉,它贡献的支付方式当场从收银台下架。
支付设置:开店前配一次
「设置 → 支付设置」(页面标题是「收款支付方式」)把每一种可配置的支付方式渲染成一张卡。卡头是名称、来源标记(插件贡献的会打上「插件」)、「已配置 / 未配置」和右上角的启用开关;卡里是这种方式需要的字段;底部一颗「保存」。余额支付不在这一页——它没有商户凭证要填。
- 1
先去渠道侧开通商户
在微信支付商户平台 / 支付宝开放平台完成签约,拿到商户号、密钥与证书文件。这一步在 Tenraft 之外,也是最花时间的一步。
- 2
逐项填进对应的卡
字段清单见下面两张表。证书类字段填的是文件内容(把 .pem 用文本编辑器打开、整段粘进来),不是文件路径。
- 3
打开开关,保存
启用时系统会做一次完整性检查,缺一项就直接拒绝并点名,比如「启用 wechat 前必须完整填写 mch_id」。想先存草稿可以关着开关保存。
- 4
用一笔小额真单试一遍
保存成功后卡头变成「已配置」,站点概览的清单也会打勾。但那只说明填过了——真正确认能收钱,请自己在前台下一笔一分钱的单走通支付与退款。
微信支付要填什么
| 字段 | 说明 |
|---|---|
| AppID | 公众号 / 小程序的 AppID。启用前必填 |
| 商户号 | 微信支付商户号。启用前必填 |
| APIv3 密钥 | 商户平台设置的 APIv3 密钥。启用前必填 |
| 商户私钥(证书内容) | apiclient_key.pem 的内容。启用前必填 |
| 商户 API 证书 apiclient_cert.pem 内容 | 与上面的商户私钥配对的那张证书。启用前必填 |
| APP 应用 AppID | 开放平台移动应用的 AppID,只有 App 支付才需要,可留空 |
| 支付回调地址 | 格式有硬性要求,见下方。启用前必填 |
| 环境 | 只有「正式」一个选项——微信支付新版接口没有沙箱环境 |
支付宝要填什么
| 字段 | 说明 |
|---|---|
| AppID | 支付宝开放平台应用的 AppID。启用前必填 |
| 应用私钥 | 你自己生成的应用私钥。启用前必填 |
| 应用公钥证书(内容) | 启用前必填 |
| 支付宝公钥证书(内容) | 启用前必填 |
| 支付宝根证书(内容) | 启用前必填 |
| 支付回调地址 | 格式要求同下。启用前必填 |
| 环境 | 「正式」或「沙箱」。沙箱可以先把链路跑通再换正式 |
支付回调地址只有一种写法
回调地址是渠道通知「这笔钱到账了」的入口,写歪一个字符就会掉单。保存时系统会逐条校验,不合规直接拒绝:
https://你的站点域名/api/pay/notify/wechat?s=12
https://你的站点域名/api/pay/notify/alipay?s=12
# 路径必须精确等于 /api/pay/notify/{支付方式},不能多一层也不能少一层
# 问号后面只能有 s= 这一个参数,值是本站点的 ID
# 必须是 https(只有本机 localhost 调试才允许 http)
# 不知道自己站点 ID?随便填一个保存,错误提示会直接写出正确的值:
# 「支付回调地址必须且只能携带 s=12」
换商户号、停用支付方式
已经收过钱的支付方式不是想停就能停。当你尝试停用某种方式、或者把商户号 / 密钥 / 证书换成另一套时,只要本站还存在下面任意一种单据,保存会被拒绝,并报出各有几笔:
- 渠道处理中的交易(顾客点了付款,结果还没回来)
- 待确认的退款单
- 还有可退金额的历史交易(哪怕是几个月前付的)
- 打款中的提现
交易流水:每天看的那张表
交易流水记的是钱,不是订单。一笔支付、一笔充值、一笔退款都会落在这里,来自哪个业务看「类型」列。列表按创建时间倒序,翻页与筛选条件都写在网址里——点进详情再返回,不会退回未筛选的第一页。
| 列 | 读法 |
|---|---|
| 交易单号 | 这笔钱的唯一凭证,对渠道、对顾客都用它 |
| 类型 | 哪个业务产生的(商城订单、充值……) |
| 金额 | 顾客实付 |
| 已退 / 占用 | 已退成功 + 正在退的合计。可退金额 = 金额 − 这一列,没有则显示「—」 |
| 支付方式 | 余额 / 微信 / 支付宝 等 |
| 第三方流水号 | 详情里可见,和渠道账单对账时用它 |
| 状态 | 含义 |
|---|---|
| 待支付 | 单子建好了,顾客还没付 |
| 支付中 | 已经拉起渠道支付,还没等到结果 |
| 已支付 | 钱到账了 |
| 部分退款 | 退了一部分,还有余额可退 |
| 已退款 | 已经全额退完 |
| 已关闭 | 超时未付或已关单,不会再收到这笔钱 |
筛选条一排:状态、支付方式、交易单号(填前缀、回车搜)、会员 ID(回车筛)、退款态(有退款处理中 / 成功 / 失败)、创建时间范围(带「近 7 天 / 近 30 天 / 本月」三个快捷档,再点一次取消)。「清空筛选」一键复位。右侧的导出按当前筛到的条件生成文件——筛到什么就导出什么,生成好会弹回执,文件在「设置 → 导出记录」里下载。
退款:发起、确认已退、标记失败
退款全部在交易详情里做。点某一行的「详情」,右侧抽屉从上到下是:交易信息、(微信支付的)发货信息、退款记录、发起退款。只有已支付和部分退款的交易才有「发起退款」这一块,且需要「退款处理」权限。
- 1
填金额
面板右上角写着这笔单还「可退」多少,输入框的占位也是这个上限。超过会被拒绝——并发下也不可能超退,系统会按已退加在途重算一遍。
- 2
填原因(必填)
比如「用户申请退款」。这条会记进退款记录,日后是你自己查账的线索;它同时参与下面要讲的重试判定,所以请一次写好。
- 3
确认
确认框会复述:将对交易 XXX 退款 X 元,余额支付实时原路退回,微信 / 支付宝以渠道受理结果为准。
- 4
看结果
结果分三种,见下表。无论哪种,退款记录里都会多出一条带退款单号的记录。
| 提示 | 发生了什么 | 接下来 |
|---|---|---|
| 退款成功,资金已原路退回 | 余额支付即时到账;渠道也可能同步就成功了 | 不用管,交易状态已变成「部分退款」或「已退款」 |
| 退款已受理,渠道处理中 | 渠道收下了,结果还没回来。退款记录显示「处理中」 | 微信 / 支付宝等系统自动收敛;系统退不了的方式需要你人工处理 |
| 退款未成功 | 渠道明确拒绝,这笔退款占用的额度已经释放 | 核实原因后可以重新发起一笔 |
「处理中」的退款单上那两个按钮
| 按钮 | 它到底做了什么 | 什么时候用 |
|---|---|---|
| 确认已退 | 只把系统里的状态改成成功,不会去渠道退钱。可以顺手填一个渠道退款号便于对账 | 弹窗里写的是「适用于虚拟支付 / 插件方式」——也就是系统退不了、你已经在渠道后台人工退过钱的那些单 |
| 标记失败 | 把这笔退款置为失败,它占用的可退额度立刻释放,不可撤销。必填原因,再走一次红色二次确认 | 你已经去渠道查实:确实没有这笔退款、渠道没发生任何资金变动 |
退款成功后,交易状态自动推进为「部分退款」或「已退款」,对应的业务也会跟着处理(关闭订单、收回已发放的权益等),不需要你再去别的页面补一刀。
提交退款后网络断了怎么办
如果提交后页面弹出「退款结果待确认」,说明请求发出去了但响应没回来——这时候最危险的动作是随手再点一次。页面为此做了一层保护,但这层保护是有前提的,你必须知道前提是什么。
- 1先关掉提示,刷新一下交易详情,看退款记录里是不是已经多出一笔——多数情况这一步就结束了。
- 2如果记录里没有新单、决定重试:金额和退款原因一个字都不要改,直接再点「发起退款」。这种情况下页面会用同一把钥匙提交,系统认得出是同一次操作,不会重复创建退款单——页面下方的灰色小字就是这么写的。
- 3一旦你改了金额、或者改了退款原因(哪怕只改一个字),那就是一笔全新的退款。页面提示会从灰色变成橙色警告,部分退款的场景下真的会多退一次。
微信支付的发货信息
用微信支付、且已支付(含已退款、部分退款)的交易,详情里会多出一块「发货信息」——这是微信支付要求把发货结果回传的合规能力,需要「发货信息录入」权限。
- 物流类型四选一:快递 / 同城配送 / 虚拟商品 / 用户自提。
- 选「快递」时,物流公司编码(如 SF、YTO)与运单号都必填;其余类型只需可选的商品描述。
- 状态有三种:待上传 / 已上传 / 上传失败。上传失败会把渠道返回的原因显示在下方,改完点「更新发货」重试即可。
- 站点还没配好微信支付时这里会直接报错,属于正常提示——先去把支付设置填完。
会员提现:一笔单的一生
- 1
会员申请
会员选提现方式、填收款账户提交。系统按手续费率算出实际到账金额,扣减并冻结申请金额,单子落「待审核」。这个阶段会员自己还能撤销,撤销后钱立即退回,单子显示「已取消」。
- 2
你审核
「待审核」的行上有「审核」按钮:同意 / 驳回二选一。驳回必须写原因(会员可见),提交后冻结的钱自动退回他的账户。同意则进入「待打款」。
- 3
你打款
「待打款」的行上是「查看并打款」。进详情核对收款账户,填打款流水号后点「确认已打款」;线下、微信零钱、支付宝这三种方式还可以让系统直接发起转账。
- 4
落终态
单子变成「已完成」,详情里留下打款时间、打款流水号、审核人和打款确认人。到此这笔钱的去向有据可查。
| 状态 | 意味着 | 你要做什么 |
|---|---|---|
| 待审核 | 会员刚提交,钱已冻结 | 点「审核」,同意或驳回 |
| 待打款 | 你已同意,钱还在冻结中 | 点「查看并打款」,转账并确认 |
| 打款中 | 已经让系统向渠道发起了转账,等回执 | 正常情况等着就行;超过一天还挂着见下一节 |
| 已完成 | 钱已经转出去了,终态 | 无,不可撤销 |
| 已驳回 | 审核驳回、或打款失败后你点了「退回」,钱已回到会员账户 | 无,备注里是原因 |
| 打款失败 | 转账没成功,钱还冻着没退给会员 | 「退回」还钱,或「重试打款」 |
| 已取消 | 会员自己在待审核阶段撤销了,钱已退回 | 无 |
| 提现方式 | 能不能系统直接打款 |
|---|---|
| 微信零钱 | 能。按钮叫「发起微信转账」,走商家转账,需要本站已配好微信支付凭证 |
| 支付宝 | 能。按钮叫「发起支付宝转账」,需要本站已配好支付宝凭证 |
| 银行卡 | 不能。自己去网银转账,回来填流水号点「确认已打款」 |
| 线下打款 | 有一个「直接置为已完成」,一步落终态,不用你填流水号(系统只写一个 OFFLINE- 开头的占位号,对不上真实回单)——手里有回单号的话更建议用「确认已打款」 |
打款失败、打款中超时:待退回与待查实
站点概览顶部的待办带会主动把异常单推到你面前,点一下直接落到已经筛好的列表。和钱有关的有这四条:
| 待办 | 什么情况 | 怎么处理 |
|---|---|---|
| 待审核提现 | 有人在等你审 | 去「会员提现」逐单审核 |
| 打款失败待退回 | 转账没成功,钱还冻在系统里,会员既没拿到也没退回 | 点「退回」把钱还给会员(备注必填),或查明原因后「重试打款」 |
| 打款中超时待查实 | 发起转账超过一天了,渠道既没说成功也没说失败 | 去渠道商户后台查,确认没出款后走下面的「查实置失败」 |
| 退款处理中待确认 | 有退款单挂在处理中 | 见上面的退款一节 |
「打款中」不会一直没人管:系统在发起转账 60 秒后就开始自动向渠道查单,查到明确成功就落「已完成」,明确失败就落「打款失败」;只要结果含糊,就退避等下一轮、保持「打款中」——宁可挂着也绝不猜。会停在「打款中」的只有微信零钱和支付宝这两种(线下打款一步就落「已完成」,银行卡本来就是你自己转账后回来确认);渠道长期不给准话的单,就靠「打款中超时待查实」这个出口人工收敛。
- 1
去渠道后台查实
在微信商户平台 / 支付宝商家后台确认:确实没有这笔转账,没有任何资金变动。
- 2
在详情里「查实置失败」
打款中的单,详情下方有这一块。填写查实说明(如「微信商户平台无此笔转账记录」),点「置为打款失败」。这一步只是把单子从悬置里救出来,钱还冻着。
- 3
回列表点「退回」
填退回原因(必填),冻结的钱回到会员账户。之后这一单会显示为「已驳回」,备注里就是你写的原因。
谁能点哪些按钮
这几页的权限在租户后台的「站点角色」里逐项勾选,再到「员工管理」里把角色指派给人。和钱有关的动作是拆开的,可以只给必需的那几项:
| 权限项 | 拿到它能做什么 |
|---|---|
| 交易查看 | 看交易流水列表与详情(包含退款记录),不能退款 |
| 退款处理(发起/确认/标记失败) | 交易详情里的三个退款动作,全在这一项里 |
| 发货信息录入 | 微信支付交易的发货信息录入与更新 |
| 提现列表查看 | 看提现列表,收款账户是打了星号的 |
| 提现详情查看(含收款账户) | 看到解密后的完整收款账户(卡号、姓名、开户行) |
| 提现审核(通过/驳回/退回) | 审核、驳回、以及打款失败后的退回 |
| 提现打款(发起/标记结果) | 发起打款、确认已打款、查实置失败 |
| 支付配置查看 / 支付方式配置 | 看支付设置 / 修改并启用支付方式 |
提现详情里的「审核人」和「打款确认人」记的是第一次让单子落到那个状态的账号(系统自动发生的记「系统自动」)。一笔「已完成但会员说没收到」的提现,你在自己后台就能追到是谁点的确认,不必去问别人。
把它变成每天的固定动作
- 1每天开工先看站点概览的待办带:待审核提现、打款失败待退回、打款中超时待查实、退款处理中待确认——有一条算一条,点进去清掉。
- 2处理提现按顺序来:审核 → 打款 → 填流水号确认。流水号一笔不落,这是你日后唯一的凭据。
- 3每周扫一遍退款:交易流水按「有退款处理中」筛一次,看有没有挂了很久的单;确认是系统退不了的方式,才动手工确认。
- 4月末对账:交易流水按「本月」+「已支付」筛出来导出,和渠道账单逐笔核第三方流水号;会员提现同样导一份,核打款流水号。两份文件都在「设置 → 导出记录」里下载。
最后一句忠告:这三页里所有会改变钱去向的按钮,系统都给你加了二次确认,并且在确认框里把金额、账户、渠道复述了一遍。那不是啰嗦——读完再点,是这份工作里最划算的两秒钟。