税务:理清业务,再准备申报

本篇内容

账户里收到一笔钱以后,报税最容易卡住的地方往往还不是计算:应该拿哪个金额,填在哪一类,什么时候处理?客户付的钱、平台显示的收入和银行到账并不相同,平台账单里的“tax”也未必是自己的所得税。

2023 年,V2EX 用户 john990 询问独立开发收入如何报税时,把美元收入、换汇额度和申报放在了同一个问题里,随后又问服务器等维护支出如何处理。那场讨论没有给出可核对的完整申报结果,回复也有不少相互矛盾的说法。它呈现的困惑很真实:钱已经会收了,但业务事实还没有整理成税务能够判断的样子。[1]

我会先把材料做到“每个金额都能解释、每个未确定项目都知道缺什么”,再按已确认的分类计算和申报。以下沿用大陆个人开发周报工具的教学情境,规则核验至 2026-10-11;业务底稿、金额和汇率为假设,没有实际申报或税务机关个案答复。涉及公司时,与身份与主体一起读。

先区分三层税务问题

同一项产品,两段交易关系,分别判断税务

  1. 开发者 → MoR 按真实合同提供软件、权利或服务;核对自己的国内增值税及所得归属。
  2. MoR → 最终客户 以 Dodo 公布的转售商角色为例,平台处理客户交易端的相关税务事务。
  3. MoR → 开发者的结算 结算单解释款项怎样形成;它不能单独决定开发者的所得类别或申报金额。
箭头表示合同与结算关系。平台的交易税责任和开发者本人的税务分别核对;具体适用仍以真实协议及业务为准。

Dodo 的公开政策将自己描述为软件等数字产品的转售商,承担支付处理、交易税务及拒付事务。开发者向平台提供的业务,在国内增值税中属于服务还是无形资产、收入又归个人还是公司,是另外两组判断。[2][3][4]

MoR 的公开角色说明只能作为交易端的证据,不能证明它已经代你完成国内个人所得税。若改用普通支付处理加税务工具,也要逐项确认覆盖范围;Stripe Tax 文档把识别义务、注册、计算收取、申报缴纳列成不同步骤,并提供自身及合作方工具。[2][4][5]

第一步:画出谁向谁提供什么

先用产品本身能观察到的事实说明业务,不从报税界面的选项倒推描述。周报工具可以写成下面这段:

我独自在中国大陆开发并维护一个 Web 工具,著作权由本人持有。用户在浏览器中把项目 CSV 整理成客户报告,文件不上传服务器;购买的是 20 美元、30 天的工具使用权,不自动续费,也不包含替客户撰写报告的人工服务。本例设定境外 MoR 按转售安排向客户销售,再按约定结算给我;没有公司参与,也没有雇佣关系。

这份说明将“我写软件”展开成了权利、交付、地点与合同关系。正式询问时,还要提供实际经营地、协议相对方及条款,并补齐实际接受服务者和使用地点等证据。本例没有这些真实客户材料,不能因为合同另一方在境外就认定整项业务完全在境外消费。[6]

如果后来改成人工定制客户报告,或将著作权交给公司经营,原来的说明就需要重做;只更换产品名称,无法反映这些变化。

以下三种情形需要的材料不同,它们不是预先确定的税务分类:

真实业务情形用什么帮助判断
为一个客户写定制程序服务合同、工作内容、履约地点、交付与验收记录
向客户提供软件使用权许可条款、权利内容、使用范围与地点、收费依据
持续运营订阅工具经营形式、订阅条款、持续服务内容、订单及成本记录

实施条例第六条将技术服务等列入劳务报酬范围,对特许权使用费和经营所得另有定义。不能只凭“SaaS”“软件许可”或“个人开发者”这个名称,省略对合同和实际业务的判断。[7]

第二步:分别确认居民身份、所得类别和来源

居民身份不能只看付款账户或居住天数

个人所得税法第一条规定,在中国境内有住所,或者无住所但一个纳税年度内在境内累计居住满 183 天的个人,为居民个人;居民个人的境内、境外所得依法律规定处理。实施条例中的“住所”,与户籍、家庭、经济利益关系导致的习惯性居住有关。[4][7]

因此,拥有海外公司或海外银行账户,不能单独决定个人税收居民身份;“一年在国内不到 183 天”也不是对所有人的完整判断。发生长期迁居等变化时,需要连同住所条件重新确认。[4][7]

所得类别决定计算方式

税法分别列出工资薪金、劳务报酬、特许权使用费、经营所得等项目;不同项目的收入额、费用减除和应纳税所得额口径不同。例如经营所得依法以年度收入总额减除成本、费用及损失后的余额计税,不能把这一口径直接搬给所有其他个人所得。[4]

可以用两个独立的、已假设完成分类的人民币例子看出区别。

一笔 10000 元收入若已确认为居民个人劳务报酬,在年度综合所得口径下先按 80% 得到 8000 元收入额。它还要与其他综合所得合并,再按规定减除费用等;8000 元不是最终应纳税所得额,20% 也不是这里的税率。[4]

若另一个已经确认为经营所得的年度例子,收入总额 10000 元、经确认可减除的成本费用及损失合计 1800 元,则这一步余额为 8200 元,仍要检查是否有其他适用扣除。这是比较不同类别的计算过程,不能给同一业务挑选较便宜的税目。[4][7]

所以,先留下每一笔收入、费用及其凭证,再确定哪些数字进入哪一项计算。不能把平台已经扣过的费用不加区分地再扣一次,也不能把净到账直接当成应纳税所得额。

境外付款不自动等于境外所得

实施条例第三条按劳务提供地、权利使用地等判断相关境内所得,不以支付地点为唯一依据。2020 年第 3 号公告则列明境外提供劳务、权利在境外使用、在境外从事生产经营等对应的境外所得条件。[7][8]

同一笔软件业务,要分别回答“属于哪类所得”和“来源于哪里”。不要先因为收到外币就选“境外所得”,再反过来用这个选项决定合同属于什么业务。

本轮公开调研仍未找到对所有“大陆个人在境内开发、通过境外 MoR 持续销售软件”的统一分类答复。把权利授予谁、持续提供什么、实际如何经营等事实带去确认,比把产品统称为 SaaS 更有帮助;企业所得税或某项软件增值税待遇也不能代替这一个税判断。

第三步:核对国内增值税的具体条件

《增值税法实施条例》自 2026 年 1 月 1 日起施行。它将信息技术服务等列入服务范围,将技术、著作权等列入无形资产范围,并规定自然人属于小规模纳税人。因此,使用个人身份并不直接排除对增值税的核对。[3]

条例第九条列出向境外单位销售、完全在境外消费的软件服务等零税率情形。2026 年第 11 号公告进一步解释:服务的实际接受方在境外,且与境内的货物、不动产、自然资源无关。因此,一份境外 MoR 协议还不足以回答最终怎样接受和使用服务。[3][6]

对本书的自然人读者,还要继续看计税方法。该公告第六条将跨境销售规定范围的服务、无形资产且实行简易计税方法的,纳入符合条件的免税范围;免税业务的进项税额不得抵扣和退税。零税率退(免)税与简易计税下的免税不能当成同一种办理结果。 书面合同、收入及申报也有条件,不是看到“软件服务”四个字就自动获得待遇。[6]

带着第一步的合同关系,向主管税务机关确认:

  1. 实际交付属于哪类服务或无形资产交易?
  2. 与 MoR 及最终客户的交易分别如何理解,交易对象与消费地如何证明?
  3. 自己适用哪种纳税方式,是否符合零税率、免税或其他待遇的完整条件?
  4. 需要哪些发票、合同、收款及申报材料,何时办理?

把得到的答复分别记在国内增值税和个人所得税两栏,避免用其中一项处理完毕推断另一项也结束。[3][4]

第四步:把订单、结算和税务口径分开保存

下面是一个虚构的资金核对例子,不代表平台报价、税率或会计处理结论:客户支付 120 美元,其中 20 美元列为交易税,平台扣 6 美元费用,剩余 94 美元拟支付给开发者。

这组数字回答了资金如何扣减,还没有回答:合同约定的开发者收入是多少、对应哪个税种、哪些费用可按适用规则减除、哪天确认收入。不要在 120、100、94 之间仅凭“哪个最像实收”作选择。税法第六条规定的个人所得计算口径,仍需在类别确定后适用。[4]

把它扩成一份已填好的教学底稿。设定这一结算期有五笔 20 美元使用权订单,交易税合计另收 20 美元,没有退款或其他调整;所有金额与费用均为合成数据,不代表任何平台的实际政策。

业务与合同
大陆个人开发、境外 MoR 转售、五笔 30 天非续费使用权。保留协议版本及权利条款;所得类别、来源与确认时点尚未核定。
订单明细 · EX-O01 至 EX-O05
产品金额合计 100 USD,另列客户交易税 20 USD,客户付款合计 120 USD。订单记录与结算单相互对应。
结算单 · EX-S01
120 − 20 − 6 = 94 USD 拟支付;6 USD 单独列为平台费用。合同如何确定开发者收入,尚待结合协议判断。
到账记录 · EX-P01
另设无出款及接收费用,94 USD 全部按 7.05 换汇,入账 662.70 CNY。保留实际换汇凭证,不能由此确定税务折算率。
税务工作底稿
类别、来源、收入及费用口径、确认时点、适用中间价与办理期限分别留为“待确认”;没有填成零税,也没有将 20 USD 客户交易税记成本人所得税抵免。

这样回看账目时,从 662.70 元可以追到 94 美元,再追到五笔订单及协议;剩下的未知集中在税务判断,不再是找不到那笔钱。EX 编号只是示例标识,真实档案中的账号、证件和客户个人信息不应贴到公开问题里。

Jesse Squires 在 2023 年记录自己的独立开发和咨询工作时,提到每周五整理账务、给交易附收据。他回顾第一年时以为自己只是坐在家里工作,漏掉了不少可交给会计核对的支出。可借鉴的习惯是及时保存原始记录:事后排除不适用项目,比一年后重找凭证容易。作者谈的是美国业务,他列出的家庭办公室、保险等扣除方式不能直接搬到中国;记下费用,也不等于已经获准扣除。[9]

外币折算也要单独核对。个税实施条例第三十二条对一般申报规定使用申报上一月最后一日人民币汇率中间价;年度汇算对已经预缴的外币所得不重新折算,对应补缴部分另按上一纳税年度最后一日中间价处理。不要直接用银行实际换汇价替代这些口径。[7]

如果同时涉及增值税,其实施条例第十七条允许选择销售额发生当日或当月 1 日有效的人民币汇率中间价,确定后 12 个月内不得变更。给不同税种分别记录依据和日期,不能只在表格里放一个“统一汇率”。[3]

下面另设一个已经确认需折算收入为 100 USD 的情形,暂不讨论后续费用减除。沿用 94 USD 换汇入账,但假设这项申报已确认适用中间价为 7.10。改变银行换汇价,可以看到现金变化,税务折算收入却不会随之改变;这是另一组前提,并没有替上一份尚未核定的业务底稿确定收入基数。

折算演示 · 合成数据,收入基数与适用口径已另设前提

银行多换到的钱,会改变这项折算收入吗?

单位:CNY / USD;演示范围 0.0001–100,最多四位小数;金额显示到分。留空表示该汇率未知。

现金入账 94 × 7.05 = 662.70 CNY

这项收入的税务折算 100 × 7.10 = 710.00 CNY

两项相差 47.30 CNY;差别来自基数与汇率口径,不是应缴税额。

实际做表时,在数值旁保留“取自哪一天的什么资料”。如果适用收入基数或汇率还不知道,先补齐判断,不用到账金额或今天的牌价代填。

第五步:按适用条款建立申报日历

以下是税法中的一般期间与前提,用于向主管税务机关核对。类别、来源或扣缴情形不同,适用行也可能不同;涉及境外所得时还要结合 2020 年第 3 号公告,不能把“经营所得”与“境外所得”两行直接叠加执行。[4][8]

已确认的适用情形一般办理期间与边界
居民个人综合所得,需要办理年度汇算次年 3 月 1 日至 6 月 30 日;有扣缴义务人的,平时另有按月或按次预扣预缴。不能因有年度汇算就忽略前期办理。[4]
经营所得的一般规定月度或季度终了后 15 日内预缴,次年 3 月 31 日前汇算;具体跨境情形另核适用规定。[4]
适用第十三条第一款:应税所得没有扣缴义务人取得所得的次月 15 日内报送申报表并缴税;是否适用该款必须先确认。[4]
有扣缴义务人但其未扣缴税款次年 6 月 30 日前缴纳;税务机关通知限期缴纳的,依通知期限。不要与“没有扣缴义务人”混用。[4]
居民个人实际取得境外所得次年 3 月 1 日至 6 月 30 日申报;先完成所得来源判断。[4][8]

法条中的 15 日还需结合具体年度日历。税务总局 2026 年通知对按月或按季度期满后 15 日内申报的税种列了节假日调整,例如 2026 年 10 月顺延至 26 日;这不是所有税务事项统一延至该日。[10]

例如,假设已经确认某项境内经营所得按季度预缴,2026 年第三季度结束后,就按上述通知核对 10 月 26 日的期限;如果另一项已经确认属于居民个人境外所得,则对应次年 3 月 1 日至 6 月 30 日的安排。不能因为两项都由境外付款人汇来,就选同一行。[4][10][8]

在实际日历里,把适用条款、所属期间、截止日、办理入口和回执放在同一条事项下。提交以后再核对受理状态与缴税记录,不能把“已填表”当作整项工作已经结束。

第六步:境外抵免只核对符合条件的所得税

居民个人境外所得税抵免有税额性质、实际缴纳和限额等条件。2020 年第 3 号公告规定,可抵免的是按所得来源国或地区法律应缴且实际已缴、具有所得税性质的税额;并规定限额和凭证要求。[8]

所以,不应把平台扣走的 VAT、销售税或服务费,填成自己已缴的境外个人所得税。先识别是谁的哪一种税,再整理所属年度、来源地、已缴金额及境外征税主体出具的完税证明等材料。[8]

对实际属于居民个人境外所得的申报,公告第八条还规定办理地点:境内有任职受雇单位时,向该单位所在地主管税务机关办理;没有时,按户籍地或境内经常居住地等规则确定。先找对主管机关,再按要求确认表格与提交方式。[8]

有了境外公司,再增加一层核对

公司收款与个人取得所得,需要按实际权利、合同和资金关系分别记录。若公司向个人支付报酬、分红或其他款项,应解释其真实依据,再确认个人所得类别;不要把所有划转都填成同一个项目。个人所得税法分别列有工资、劳务、股息红利等类别,居民个人的境内外所得规则仍需核对。[4]

美国 LLC 的税务分类、Form 5472,或香港公司利得税申报,都有各自规则。美国的 disregarded entity 分类不直接替你完成中国判断;香港的离岸利润主张也需要理由与证据,不能根据注册地自动认定。具体主体手续见身份与主体。[11][12][13]

带着一份完整问题去确认

前面的底稿可以整理成一份有上下文的询问,而不只问“海外收入税率多少”:

我独自在中国大陆开发和维护浏览器端周报工具,文件在用户浏览器内处理,著作权归本人,没有境外公司或雇佣关系。按本次教学设定,境外 MoR 以转售安排向客户销售 20 美元、30 天非续费使用权,再与本人结算。本期五笔订单的产品金额合计 100 美元、客户交易税 20 美元,扣平台费 6 美元后拟款 94 美元,示例换汇入账 662.70 元。

请结合实际协议中的权利范围、经营地点、服务接受方与使用证据,确认个人所得类别和来源,以及涉及的国内增值税处理;开发者收入按什么金额和时点确认,平台费怎样处理,各税种采用哪一天的汇率;有无扣缴或自行申报义务,分别用什么表、在哪个期间办理;如果主张跨境免税,还需补什么合同、收汇、消费地和申报材料?

如果实际收入来自广告、赞助、联盟佣金或授权,先改写上面的业务事实:谁与你签约、为何付款、提供了哪些服务或权利、平台怎样扣费与结算。不要只替换金额,仍把每一笔都描述成软件使用权销售。

实际使用时,将教学事实替换为自己的真实业务,附上合同版本、订单、结算与到账记录,再补属地和身份材料。当前示例没有税务答复,因此不替它填写一个确定的税目、零税率或截止日。

保存答复日期、适用事实和依据。实际产品、合同、经营主体或履约地点变化后,带着变化重新核对,而不是永久套用旧答复。

资金差异先用提现与结汇中的对账方法核对;支付平台覆盖什么,用收款与交付确认。税务判断以这里整理的真实业务材料继续推进。

Sources

  1. 独立开发者如何报税 · john990 · V2EX · accessed
  2. Merchant Acceptance Policy · Dodo Payments · accessed · archive
  3. 中华人民共和国增值税法实施条例 · 国家税务总局政策法规库 · accessed · archive
  4. 中华人民共和国个人所得税法 · 国家税务总局政策法规库 · accessed · archive
  5. How Stripe Tax works · Stripe · accessed · archive
  6. 财政部 税务总局关于出口业务增值税和消费税政策的公告(2026年第11号) · 财政部、税务总局(黑龙江省税务局转载) · accessed
  7. 中华人民共和国个人所得税法实施条例 · 国家税务总局政策法规库 · accessed · archive
  8. 财政部 税务总局关于境外所得有关个人所得税政策的公告(2020年第3号) · 国家税务总局广东省税务局(转载) · accessed
  9. Going Indie: bookkeeping and invoicing · Jesse Squires · accessed
  10. 国家税务总局办公厅关于明确2026年度申报纳税期限的通知 · 国家税务总局办公厅 · accessed · archive
  11. Limited liability company (LLC) · Internal Revenue Service · accessed · archive
  12. Instructions for Form 5472 (12/2024) · Internal Revenue Service · accessed
  13. Notes and Instructions — Form BIR51 · 香港税务局 · accessed · archive

内容与更新说明

我们使用 AI 开展资料调研、内容编写与维护,目标是通过持续核验和修订,让指南跟上规则与产品的变化。

了解来源、核验与配图
资料来源
关键事实标注出处。价格、政策与准入条件依据相关官方资料核对;实践经验注明原作者及背景,便于回到原文判断适用范围。
核验与更新
核验日期对应已完成的资料检查,具体范围见正文及修订记录。后续规则可能变化,图文和排版调整不会自动更新核验日期。
配图与示例
本站场景插画由 AI 创作,用于辅助解释。教学案例和演示使用明确标注的示例数据;涉及真实操作或结果时,另行说明来源与验证范围。

本主题涉及支付、税务与法律事项,内容为经验整理,不构成专业意见;涉及资金与合规的决定请以官方文件或专业人士意见为准。