行业解决方案 2026-11-10

青岛培训机构会员管理小程序开发:续费和退费怎么算,已上课时单价与赠课处理是关键

直接答案:续费和退费是同一套账的两个方向,都卡在三个变量上:已上课时怎么折价、赠课算不算、手续费扣不扣。这三个变量不同组合能算出好几种结果,差异可能上千元。规则不提前写进合同,退费时只能临时协商,协商结果还不一致,被家长之间一对比就成了信任问题。判断一套系统能不能用,就看它能不能对着任何一个学员,三十秒内算出「该退多少」并且说出这个数字是怎么来的。

核心结论速览

退费金额等于实付减去已上课时折价,再减手续费。三个变量:实付金额从订单取,已上课时从流水统计,折价单价按购买时的实际单价(不是课程原价)。这三个数都要能追溯。

赠课不退,或者按已用比例扣减。两种做法都能接受,关键是写进合同并统一执行。最常见的吃亏方式是「剩余课时全按买课单价退」,等于把赠课也折成了钱。

续费要能识别「续的是哪个课程包」。同一个课程续第二期、跨课程续、升级到更高阶课程,三种情况的课时账户处理不一样。笼统地叫「续费」,账会混。

退费要走审批,不能前台直接操作。退费涉及现金流出,必须有审批链和留痕。前台能直接退的系统,是财务风险最高的系统。

退费完成后账户要结清,不能留余额。留着余额的账户,后面还会被扣课时、被再次退费,账面永远是乱的。退费完成即置为已结清,后续如需再报名,开新账户。

一、续费退费算不清之后会发生什么

场景一:退费金额三算三样。家长要求退费,前台算出一个数,财务算出另一个数,校长拍板给了第三个。三个数的差别在于「已上课时按什么单价折」——前台按课程原价,财务按购买单价,校长按打折后的均价。同一件事三种算法,家长自然要选最有利的那个,机构只能被动。

场景二:赠课被折成了钱退出去。买三十节送五节,上了二十节,剩余十五节。按买课单价退十五节的钱,等于把五节赠课也折现了。正确做法是只退买课部分的剩余,赠课作废。这一条在合同里没写,退款时就只能吃哑巴亏,而且家长之间会传「这家可以退赠课的钱」。

场景三:续费之后课时账户变成两个。学员第一期还剩三节,续了第二期三十节。系统给开了个新账户,结果上课扣课时先扣哪个、剩余怎么算、退费时按哪个账户算,全都不清楚。续费应该是在原账户上追加,或者在两个账户之间建立明确的扣减顺序。

场景四:退费后账户还留着余额。退了钱,账户没有结清,还剩几节课的余额。后面这个学员又来报名,系统把新旧余额合在一起算,退费时又退多了。退费完成必须把账户置为已结清,余额清零,并留一条退费流水说明清零原因。

场景五:退费没有审批,前台自己就能操作。前台为了安抚投诉的家长,直接操作了退费。月底财务对账发现账上少了一笔,查不出是谁退的。退费必须有审批链:发起、审核、执行三个环节分开,每一步都记人和时间。

场景六:续费提醒发得太晚或者太频繁。学员课时只剩两节才提醒,家长来不及安排预算;或者每周都提醒一次,家长觉得被催。续费提醒的时机应该按「剩余课时数」和「剩余有效期」两个条件触发,比如剩五节或者剩三十天时提醒一次,提醒后未续费则降频。

二、续费的三种情况和处理方式

情况一:同一课程续第二期。最简単的做法是在原账户上追加课时,有效期从「原有效期」和「续费日」两者较晚的那个开始顺延。这样学员不会因为续费而损失剩余的有效期。追加课时要生成一条「续费」类型的流水,写清追加了多少节、有效期延到什么时候。

情况二:跨课程续费(换一个课程)。要开新账户,因为两个课程的课时不能通用。原账户如果还有剩余课时,处理方式有三种:退费、转到新课程(按折算比例)、保留到原课程结束。三种都要在续费时明确选择并留记录,不能默认保留——默认保留的账户会一直挂着,年底一算是个大数字。

情况三:升级到更高阶课程。本质是跨课程续费加补差价。补差价按「新课程单价乘以课时数减去原课程剩余价值」算,或者按机构自己的升级政策算。这条政策要写清楚,因为升级往往发生在学员上了一半的时候,剩余价值怎么算最容易有争议。

续费提醒的触发条件。两个条件取先到的:剩余课时低于阈值(比如五节),或者剩余有效期低于阈值(比如三十天)。提醒的对象是家长(通过家长端)和课程顾问(通过待办)。只提醒家长不提醒顾问,顾问不知道谁该跟进;只提醒顾问不提醒家长,家长会觉得突然。

续费率的统计口径。分子是「在有效期到期前完成续费的学员数」,分母是「本周期到期的学员数」。这个口径要固定,因为不同口径算出来的续费率差别很大(比如把提前续费算到下一期,数字就完全不同)。口径固定,才能做同比和环比。

续费和课时的关系。续费不改变已上课时的记录,只是增加账户的可用课时。所以续费动作不应该触发任何考勤或课次的变更。如果续费后系统把课次重新生成了一遍,那说明课次和账户的耦合做错了。

三、退费的四个关键判断

判断一:已上课时的单价怎么取。按购买时的实际单价,等于实付金额除以购买课时数,赠课不计入分母。这是最常见也最容易被接受的口径。如果合同里写的是按课程原价折算,必须在报名时明确告知并让家长签字确认,否则退费时争议很大。两种口径的差额可能有几千元,不能含糊。

判断二:赠课怎么处理。两种口径:赠课不退(剩余赠课直接作废),或者按已用比例扣减(算出赠课已用部分的价值,从退款中扣除)。前者简单,后者更公平。建议选一种写进合同,全机构统一。最忌讳的是「看情况」——看情况意味着每次都是一次谈判。

判断三:手续费扣不扣。可以扣,但要写明比例和上限,并且在报名时就告知。手续费的本质是覆盖已发生的管理和教材成本。不写明比例的系统,退费时前台不敢扣,全退;写明了的,按规则扣,家长有预期。

判断四:退费的时间节点。分三种:未开班退费(通常全额或者扣少量手续费)、已开班未上课退费、已上课退费。三种的规则不同,要在合同里分别写。只写一条笼统的「按剩余课时退」,遇到未开班退费时就会扯皮。

退费审批链的设计。发起(前台或教务,填退费申请和原因)、审核(教务主管或校长,核对金额和规则)、执行(财务,实际打款并记流水)。三个环节分开,每一步都记人和时间。金额超过阈值时增加一级审批。审批链的意义不只是防舞弊,也是给前台一个「不是我说了算」的依据,减少现场压力。

退费后的账户处理。退费完成,账户置为已结清,剩余课时清零,生成一条「退费扣减」流水记录清零的数量和依据。不能只是把余额改成零而不留流水——那样日后查不出这个账户是怎么清零的。结清之后如果学员再来报名,开新账户,旧账户保持结清状态作为历史记录。

四、四个续费退费场景怎么判

场景一:学员上了一半要求退费,但已经享受了赠课和折扣。先按合同口径算:实付金额、已上课时按购买单价折、赠课按「不退」或「按比例扣减」、手续费按比例扣。四个数都算出来,把明细给家长看。明细清楚,家长即使不满意也能理解;只有一个总数,家长只会觉得「凭什么扣这么多」。

场景二:学员要求把剩余课时转到另一个课程。按折算比例转,比例等于「原课程单价除以新课程单价」。转的时候生成两条流水:原账户「转出」,新账户「转入」,两条流水的金额要能对上。只做一条的系统,两个账户的余额都会不准。折算比例要在合同或者转课政策里写明,不能临时定。

场景三:续费时原课程还剩课时,家长要求把剩余课时折成现金抵扣新课程。本质是「退费加续费」两个动作。先按退费规则算出剩余课时的价值,再用这个价值抵扣新课程的实付金额。两个动作都要留记录,不能只记一个净额。只记净额的系统,日后查不出这个学员到底退了多少、买了多少。

场景四:学员长期不来上课,课时过期了要求退费。看合同对有效期的约定。如果合同写明「到期未使用视为放弃」,可以按合同执行,但建议给一次延期机会,避免投诉升级。如果合同没写有效期,那就不能主张作废,只能按剩余课时退。这一条说明:有效期条款不是可选项,是必须项。

一条判断标准:让任何一个前台,用系统给一个学员算出退费金额,并且说出每一步的依据。如果他能说出「实付多少、已上几节、单价多少、赠课怎么处理、手续费多少」,说明规则是可执行的;如果他说「这个得问校长」,说明规则还停留在人的脑子里,没进系统。

再补一层:账务顺序。一笔「退费加续费」的混合操作,要拆成两条独立记录走,先按退费规则算出应退金额并生成退费流水,再按新订单生成购课流水,两者之间的抵扣单独记一条。只记净额的做法,账面看起来平了,但事后查不出这个学员退过多少、买过多少,做退费率和续费率的统计时全部失真。

五、常见问题解答

退费一定要写进合同吗?

要,而且越具体越好。合同里至少要写清四件事:已上课时按什么单价折算、赠课是否退还、手续费比例和上限、不同时间节点(未开班、已开班未上课、已上课)的处理方式。这四条写清,退费就从「谈判」变成了「执行」。合同里只写「按剩余课时退费」,等于什么都没写。

赠课到底该不该退?

从财务角度看,赠课是营销成本,没有对应的现金流入,退现金等于凭空支出,所以主流做法是不退。从客户关系角度看,完全不退会让家长觉得吃亏,所以可以设计成「赠课按已用比例扣减」这种折中方案。选哪种取决于机构的客单价和退费率,但一定要统一,不能对不同家长用不同口径。

续费要不要给折扣?

可以给,但折扣要和课时包绑定,而不是和「续费」这个动作绑定。比如「续三十六节享九折」,而不是「老学员续费享九折」。前者鼓励多买,后者只是让利。折扣一旦给出,退费时的单价计算要按折后实付算,这一点要在合同里写明,否则退费时又会出现「按原价折还是按折后价折」的争议。

学员要求退费但还在上课,怎么处理?

先停课再走流程。退费申请提交后,账户应该被冻结,不能再扣课时,也不能再排课。否则流程走完发现又多上了三节,金额还要重算。冻结这个动作要自动触发,不能靠前台记得去操作。

续费率怎么算才合理?

分子用「到期前完成续费的学员数」,分母用「本周期到期的学员数」,口径固定不变。不要用「续费金额除以总收入」这种口径,它会把客单价变化的影响混进来。口径固定之后,做同比和环比才有意义,也才能看出续费动作有没有效果。

退费审批要几个人?

至少两级:发起和执行分开。发起是前台或教务,执行是财务,中间加一级审核(教务主管或校长)。金额超过设定阈值时再加一级。审批级数不是越多越好,级数太多会让正常的退费拖很久,家长等得不耐烦反而更容易投诉。

退费之后还能再报名吗?

可以,但要开新账户。旧账户保持已结清状态作为历史记录,新账户从零开始。不要在原账户上追加,因为原账户已经有退费流水,再追加会让余额和流水的对应关系变复杂,日后核对容易出错。分开账户,历史清楚,新账也清楚。

六、九尾狐在这类问题上的做法

九尾狐在做续费退费模块时,第一件事是把退费金额做成「可拆解的计算过程」,而不是一个结果数字。系统输出的是:实付金额、已上课时、折价单价、赠课处理、手续费,五项分列,最后汇总。这个过程既给家长看,也给内部审计看。只给一个总数的系统,每一次退费都要人工解释一遍。

第二个做法是把续费分成「同课程追加」和「跨课程新开」两类,走不同的账户处理逻辑。同课程追加在原账户上累加并顺延有效期,跨课程新开账户并处理原账户余额。这个区分在开发时多写了一段分支,但它避免了「续费之后账户变成两个、扣课时不知道该扣哪个」这种最常见的混乱。

第三个做法是退费走审批链并且自动冻结账户。申请一提交,账户冻结,不能再扣课时、不能再排课。这一步自动化的价值在于:它把「退费过程中又上了几节课导致金额重算」这个高频问题直接消灭了。

七、综上所述

续费和退费,说到底是同一套账的两个方向。账清的前提是三个变量都明确:已上课时怎么折价、赠课算不算、手续费扣不扣。这三个变量写进合同、配进系统、算得出来,退费就从「每次都要谈」变成了「按规则执行」。而规则清楚本身,就是有效的客户关系管理——家长不怕扣钱,怕的是不知道为什么扣。

相关阅读