用户指南
通过邮件发送发票
使用占位符编写可复用的邮件模板,通过邮件应用或 SMTP 发送文本,通过分享面板附上 PDF,并将发票标记为已发送。
在 Invoice Flow 中通过邮件发送发票其实是两个独立的动作,理解这一区别是关键所在。第一个动作生成文字:一条根据模板生成的主题和正文,其中会自动填入客户名称、发票号、总额和到期日。第二个动作生成文件:也就是客户真正会打开、转发给应付账款部门并据此付款的那份 PDF。应用通过发票菜单中的发送邮件客户端执行第一个动作,通过 PDF 预览界面的分享按钮执行第二个动作。应用本身不会把 PDF 和模板文字一起放进同一封邮件发送出去,因此本指南会如实说明每个按钮各自的作用,并给出一种将两者结合起来的合理方法。
示例商家是位于俄勒冈州波特兰的 Willow & Root Yoga Studio 瑜伽馆。店主 Hannah Whitfield 为企业客户提供午间上门瑜伽课程,每月以美元向每位客户开一次发票。每张发票都发往一个应付账款邮箱而非某个具体的人,因此一条包含发票号的、格式统一的主题行,比亲切的语气更重要。
屏幕上会看到什么
涉及三个屏幕。
模板位于设置下的发票设置分组中,图块为邮件模板(副标题“客户邮件的主题+正文预设”)。该屏幕是一个简单的列表:信封图标标记五个内置模板,铅笔加线条图标标记你自己创建的模板,每一行都会显示模板名称及其下方的主题。每一行都有一个三点菜单,包含复制和删除,角落的**+**按钮用于新建模板。
在同一设置分组中紧随其后的是邮件发送(副标题“选择发票邮件的发送方式”)。在这里你可以在**系统邮件应用(mailto)和SMTP 服务器(自动发送)**之间选择,如果选择后者,SMTP 主机、端口和凭据也在这里填写。
第三个屏幕就是发票本身。打开单据标签页,点击一张发票,使用右上角的三点菜单。该菜单的第二组包含发送邮件客户端和分享为网页。对于草稿,第一项则是标记为已发送。在发票底部,宽大的预览 PDF按钮会打开 PDF 查看器,其应用栏中有打印图标、分享图标,以及仅对草稿显示的、带有分享并标记为已发送的菜单。
如何编写带占位符的模板
内置模板适合首次发送使用,但 Hannah 希望主题能让企业收发室无需打开邮件就能归档,正文还要列出具体的课程内容。编辑模板是 Pro 功能;查看列表则不是。
- 打开设置,滚动到发票设置,点击邮件模板。
- 点击+从零开始创建,或点击已有的一行就地修改。
- 输入模板名称。它只会出现在应用自己的列表中,不会出现在邮件里。
- 输入主题。把光标放在应该显示发票号的位置,点击插入变量下的invoice.number标签。
- 点击进入正文并撰写正文内容,在合适的位置插入诸如client.name、invoice.total、invoice.dueDate和invoice.items之类的标签。
- 开启实时预览以查看填入示例数据后的效果,然后点击保存。
一个占位符就是用双花括号包裹的标签名,因此点击client.name会输入{{client.name}}。标签会插入到最近获得焦点的那个字段中;如果两个字段你都还没点过,它会插入到正文中。你也可以手动输入花括号。选择器将可用的值分为客户、发票、商家和其他几组:
| 分组 | 占位符 |
|---|---|
| 客户 | client.name、client.company、client.email、client.phone、client.address、client.country |
| 发票 | invoice.number、invoice.status、invoice.currency、invoice.total、invoice.subtotal、invoice.tax、invoice.discount、invoice.paid、invoice.due、invoice.issueDate、invoice.dueDate、invoice.daysOverdue、invoice.daysUntilDue、invoice.items |
| 商家 | business.name、business.company、business.email、business.phone、business.address、business.website、business.taxId |
| 其他 | lateFee.accrued、today |
金额类占位符会按发票所用货币格式化,日期使用应用的短日期格式,invoice.items会展开为一个项目符号列表,每行显示一项的描述、数量和单价。invoice.due是仍欠款的金额,而不是到期日;到期日是invoice.dueDate。
这个预览是刻意做成通用样式的。它使用一个固定的示例客户“Linda Park”,公司为“Riverstone Capital”,发票号“INV-0204”,金额“$4,950.00”,以及一个示例商家“Carter Digital Studio”。只有在实际发送时,把模板套用到一张真实发票上,才会出现你自己的名称和金额。
如何从发票发送文字邮件
模板保存好之后,发送这条消息只需四步点击。这条路径只发送文字;PDF 的部分在下一节介绍。
- 从单据标签页打开发票。
- 点击右上角的三点菜单,选择发送邮件客户端。
- 在选择模板面板中,点击你想要的模板。
- 如果你的发送方式是系统邮件应用,你的邮件应用的撰写窗口会打开,收件人、主题和正文均已填好;检查后点击其自身的发送按钮。如果你的方式是 SMTP,应用会立即发送并显示邮件已发送。
收件人始终是客户记录上的邮箱地址。如果该字段为空,应用会在模板面板打开之前就以提示客户没有邮箱停止操作,因此请先为该客户补充邮箱地址。如果因为你从未打开过模板屏幕而导致模板列表为空,五个内置模板会当场被创建出来。
如何发送 PDF 并将发票标记为已发送
文件通过 PDF 预览界面的 Android 分享面板发送出去。任何接受文件的目标都可以使用:Gmail、Outlook、WhatsApp、Drive,或是公司自己的即时通讯应用。
- 在发票上,点击底部的预览 PDF,等待文档渲染完成。
- 对于草稿,点击预览界面应用栏中的三点菜单,选择分享并标记为已发送。对于已经发送过的发票,直接点击分享图标即可。
- 在 Android 分享面板中选择你的邮件应用。PDF 会被附加上去,主题为“Invoice WR-2026-091 from Willow & Root Yoga Studio”,正文是一句简短的“请查收附件”提示。在那里添加收件人并发送。
- 回到应用中,以这种方式分享过的草稿会显示发票已标记为已发送,其状态徽章也会从“草稿”变为“已发送”。
分享面板并不会读取你的邮件模板。它的主题和正文是固定的应用字符串,取自发票号、你的公司名称和客户名称。因此对企业客户来说,实际可行的流程是:先从预览界面分享 PDF(这也会同时把草稿状态改为已发送),然后如果你想发送带有更完整的项目列表的模板化邮件,再用发送邮件客户端跟进一次。或者,直接把模板文字粘贴进分享面板打开的那个撰写窗口,因为两种情况下用的都是同一个邮件应用。
标记为已发送只是一次状态更改,仅此而已。它不会记录日期、地址或消息副本;变更记录条目是唯一的痕迹。反过来,通过发送邮件客户端发送邮件也从不会触碰状态,因此一张从草稿状态发出邮件的发票,会一直保持“草稿”状态,直到你使用分享并标记为已发送,或者从发票菜单中选择标记为已发送并确认**更改状态?**对话框。
如何切换到 SMTP 发送
默认方式是打开你的邮件应用,这对大多数人来说是正确的选择:你能在发送前看到消息内容,由你的邮件服务商负责投递,并且可以在同一个窗口里附上 PDF。只有当你经常从应用内发送邮件、又不想经历撰写步骤时,SMTP 才有意义。
- 打开设置,点击邮件发送。
- 选择SMTP 服务器(自动发送)。表单会在两个单选按钮下方展开。
- 输入主机(Gmail 为 smtp.gmail.com),端口保持 587,填写用户名和密码。对于 Gmail 和 Outlook,密码必须是在账户安全设置中生成的应用专用密码,而不是你平时登录用的密码。
- 填写发件人地址和发件人名称;这些是客户在“发件人”一栏中看到的内容。
- 对于 587 端口保持STARTTLS开启,或者对于需要 465 端口的服务商开启SSL/TLS。开启其中一个会自动关闭另一个。
- 点击测试连接(将发送到您自己的地址)。应用会先保存表单,然后向发件人地址发送一封简短的测试邮件,并报告SMTP 测试成功或SMTP 测试失败及服务器给出的原因。
- 点击保存。
一旦保存了 SMTP 设置,发送邮件客户端就不再打开任何窗口。在选择器中点击一个模板会直接发送,唯一的反馈是绿色的邮件已发送提示条,或者带有错误文字的红色邮件发送失败提示条。这里没有发件箱,也没有重试队列,因此如果提示条是红色的,就修正设置后重新发送一次。
规则与细节
- 模板需要名称和主题;正文可以留空。任一必填字段为空时保存会显示请填写必填字段并保持面板打开。
- 未知的占位符会原样保留。一个拼错的
{{client.nmae}}会作为字面文字送达客户,这也是为什么保存前值得瞄一眼实时预览。 invoice.daysOverdue和invoice.daysUntilDue都不会低于零;不适用的一方会显示为 0。除非商家资料设置了滞纳金比例、发票已过宽限期且仍有欠款,否则lateFee.accrued为空;它是基于发票总额的一次全新计算,而不是已经加到发票上的金额。- 五个内置模板只有英文版本。你可以就地编辑它们,它们仍会保持“内置”属性;复制会创建一个名为“(副本)”的可编辑自定义模板。对内置模板执行删除只是将其隐藏而非移除,也没有屏幕可以把隐藏的内置模板找回来。对自定义模板执行删除会立即移除,且不会有确认提示。
- 模板在你所有的商家资料之间是共享的。发送邮件客户端下的选择器会显示所有可见模板,无论该发票属于哪个资料。
- 创建、编辑和复制模板,发送邮件客户端、分享为网页,以及分享或打印 PDF 都是 Pro 功能,在没有有效试用期或订阅时会跳转到付费墙。删除模板和邮件发送屏幕本身则不受此限制。
- SMTP 设置存储在设备上:主机、端口、用户名、发件人相关字段以及两个开关保存在应用偏好设置中,密码保存在 Android 的加密存储中。之后再次编辑时,将密码留空会保留已存储的密码。无法解析的端口会回退为 587。
- 应用拒绝在没有加密的情况下发送 SMTP 邮件。当STARTTLS和SSL/TLS都关闭时,连接会被拒绝,而不是以明文发送你的密码。
- 测试连接会在测试之前先保存表单,因此即便测试失败,字段中当前的内容也会成为你已保存的配置。
- 提到发送邮件的自动化规则,实际上并不会使用上述任何一种方式;它们会创建一条应用内提醒,交由你手动处理。
- 分享为网页是同一菜单中的第三个选项:一个带有包含收款二维码和包含收款按钮两个开关的对话框(默认均为开启),随后是带有一个自包含 HTML 文件的分享面板。与 PDF 分享一样,它使用的是固定文字,而不是你的模板。
提示
相关指南
- PDF 预览、分享与编辑器更深入地介绍了预览屏幕、打印以及内置 PDF 编辑器。
- 发票状态、列表与历史记录说明了已发送、逾期和已付款各代表什么,以及变更记录如何记录状态变化。
- 提醒与自动化规则展示了会标记逾期发票以提示跟进的定时提醒。