Payment Links 很适合一个人先卖 AI SaaS:不用写付款页,复制链接就能让客户进 Stripe 托管的 Checkout。问题通常出在第一个欧洲公司客户付款后:财务要 VAT number、公司抬头、billing address 和 invoice PDF,你才发现原来的链接只收了邮箱。

我的默认做法是把 B2B 发票字段提前收齐,但不把 Payment Links 当成长期企业采购系统。它解决的是低代码收款和早期验证,不是替你判断欧盟 VAT、英国 VAT、美国 sales tax 或客户报销规则。

默认配置应该打开哪些字段?

AI SaaS 早期用 Stripe Payment Links,可以按「发票够用,但不打扰个人客户」来配。

配置项默认建议为什么这样配放弃条件
Business name打开,允许客户填写公司名公司客户 invoice 需要法定名称你只卖个人消费版,且不处理报销
Individual name可选打开个人订阅和公司卡混用时能留痕Checkout 太长导致转化下降
Billing address打开或设为 tax 需要时收集Stripe Tax 和 invoice 常要账单地址客户全在单一地区且不用发票
Shipping address默认关闭纯 AI SaaS 没有物流地址有硬件、礼品卡、线下交付
Tax ID collection打开;B2B 链接可设为支持地区必填VAT/tax ID 后补很麻烦只做免费试用或个人低价订阅
Stripe Tax有跨地区销售时再启用并配置注册地自动计算税额,减少手工税率还没弄清注册和申报义务
Terms checkbox打开让客户付款前确认条款没有 Terms URL,先补页面

Stripe 文档里,Payment Links 可以收地址、电话、公司名、个人名、业务税号、自定义字段,也可以启用 automatic tax。这里最容易误判的是 tax ID collection:它收的是 business tax ID,不适合拿来收受保护的个人身份资料。

在 Dashboard 里怎么配一条 B2B 链接?

路径是 Stripe Dashboard -> Payment Links -> Create 或编辑已有链接。先选产品和价格,再进 Options 区域。

先打开 Collect customer names,至少启用 business names。AI SaaS 面向企业客户时,公司名最好不要靠客户付款后发邮件补,因为 invoice 和 Customer 记录已经生成。

接着打开 Collect customer addresses。纯软件通常选 Billing addresses only;Stripe Tax 需要更完整地址时,Checkout 会按规则收取。不要为了「资料完整」强行收 shipping address,B2B 客户会以为你有实物交付。

然后启用 tax ID collection。Stripe 的税号收集由 Checkout 控制,会根据客户所在地显示支持的字段;客户如果已有保存的 tax ID,Checkout 可能不再展示输入框。新客户付款后,税号会出现在 Checkout Session 的 customer_details.tax_ids,关联 Customer 时也会保存到 Customer 相关记录。

最后在 Checkout and Payment Links settings 里补 return、refund、legal policy 和 support contact。客户财务看 invoice 前,通常也会看你是不是有 Terms、Privacy、Refund 和联系邮箱。

如果你已经有后端,可以用 API 固定配置,避免团队每次在 Dashboard 里点错。

curl https://api.stripe.com/v1/payment_links \
  -u "$STRIPE_SECRET_KEY:" \
  -d "line_items[0][price]=price_123" \
  -d "line_items[0][quantity]=1" \
  -d "name_collection[business][enabled]=true" \
  -d "name_collection[business][optional]=false" \
  -d "billing_address_collection=required" \
  -d "tax_id_collection[enabled]=true" \
  -d "automatic_tax[enabled]=true" \
  -d "consent_collection[terms_of_service]=required"

这段只表达配置思路,不代表所有账户都能直接上线。Stripe Tax 要先在 Dashboard 激活,并配置你注册或需要计算税的地点;Terms checkbox 也需要先在 Public details 或相关设置里放好条款链接。

如果你不想让客户输入太多字段,可以把 business name 和 tax ID 放到 B2B 专用链接,把个人订阅保留在更短的链接上。一个公开链接同时服务个人、团队采购和企业年付,后面客服会很累。

invoice 和 Customer 信息会怎么落地?

Payment Links 背后仍是 Checkout Session。客户完成付款后,Stripe 会生成支付记录;订阅型链接会进入 Billing/Subscriptions,一次性付款可以在链接详情和 Payments 里看。

税号和公司名的落地要看是否创建或关联了 Customer。Stripe 文档说明,Checkout 可把收集到的 tax ID、business name 和 name 保存到 Customer;没有保存到 Customer 时,也可以从 Session 的 customer_details.tax_ids 读取。订阅 invoice 会显示收集到的 legal business name。

发票不是只看一个字段。客户真正会问的是:

客户财务要什么Stripe 里对应看哪里你不要承诺什么
公司抬头Customer name / business name不承诺能满足所有报销制度
VAT/tax IDCustomer tax IDs 或 Session tax IDs不承诺税号在当地一定有效
账单地址Customer address / billing details不替客户判断抵扣资格
invoice PDFInvoice 或 payment 相关页面不手改 PDF 内容
连续编号Invoice settings不随意切换编号规则影响后续记录

Stripe 的 invoice customization 文档提醒,商户要保证 invoice 准确、税额正确,并符合所在地区法律。欧盟和英国常见 account-level invoice sequencing,其他地区可能默认 customer-level;切换编号规则通常只影响未来 invoice,不会改过去的编号。

Stripe Tax 和 tax ID 有哪些税务限制?

Stripe Tax 能帮你在 Payment Links 里计算和收取税,但它不是会计师,也不是 MoR。你仍然要判断自己在哪些地区需要注册、申报、留存证据,以及价格是 tax inclusive 还是 tax exclusive。

tax ID collection 也不是万能验证。Stripe 会检查格式;对 ABN、EU VAT、GB VAT 等部分号码会做异步验证。文档同时写明,使用 Checkout 收集客户信息时,你仍要确保客户资料的有效性。对 AI SaaS 来说,尤其不要把「客户填了 VAT」理解成「这笔交易一定可以零税率」。

另外,Stripe Payment Links 不是采购合同系统。它不会替你处理客户内部审批、供应商准入、PO number、合同签署、W-8BEN-E、服务所在地判断或本地电子发票规则。年付金额一高,这些问题会比付款按钮本身更重要。

可以用 Payment Links 的场景很清楚:早期验证、公开定价、小团队自助购买、低客单价订阅、客户不要求复杂采购流程。

下面几类情况,建议尽早换方案:

信号更合适的路径原因
客户要 PO number 或供应商资料Stripe Invoice 或合同流Payment Links 不适合采购审批
客户要多个 billing contactCheckout API + Customer Portal需要自己维护客户和权限
年付企业单金额较高手动 invoice + 合同税务、退款和服务条款要写清楚
多国 VAT/GST 判断吃力MoR 或税务顾问参与MoR 承担的责任和 Stripe 直收不同
需要按 seat、用量或企业折扣结算Billing API靠多个链接会让对账失控
要本地电子发票或特殊格式当地供应商或会计系统Stripe PDF 未必满足当地规则

如果你做的是 AI SaaS,最实用的分界线是 MRR 还低时少写代码,先把 Payment Links 配好;一旦 B2B 客户开始要采购流程,就把付款、合同、税务和客服分开设计。别等第一张年付 invoice 被财务退回,才补 Customer 数据模型。

团队交接时要留下哪些字段?

一个人做产品时,最容易把「客户在哪条链接付款」忘掉。建议每条 Payment Link 留一份内部记录:产品名、Price ID、链接用途、是否收 business name、是否收 billing address、是否启用 tax ID collection、是否启用 Stripe Tax、Terms URL、Refund URL、负责客服邮箱。

Webhook 里至少保存 checkout.session.completedcustomercustomer_details.tax_idscollected_informationinvoice 和付款状态。后面客户补问 invoice 时,你不用在 Dashboard 里翻半天,也不用让客户重新填写一次公司资料。

这篇没有覆盖具体国家税率、电子发票本地格式、Stripe Managed Payments 是否适合你的行业、以及任何税务申报动作。涉及注册、申报、抵扣、零税率或反向征税时,让 CPA、税务顾问或当地会计看 Stripe 记录和客户资料。

相关阅读