如何构建客户门户:文件、进度、发票与权限
客户门户是一个私密区域,每位客户在这里登录,查看项目进度、共享文件、未完成的请求和发票。要构建它,首先要明确客户在最初十秒内需要看到什么;然后对客户、项目和文件建模,使每条记录都属于某一位客户;在服务器端强制执行“客户只能看到自己的记录”;并将上传的文件保存在私有存储中。功能清单可以保持简短,真正重要的是把权限做对。
企业为什么要构建客户门户
门户通常用来取代大量的电子邮件往来、共享文件夹以及“进度怎么样了?”之类的消息。代理机构、会计师、顾问、建筑商、工作室以及各类服务型企业都在使用门户。一个好的门户应当:
- 在客户提问之前就回答进度问题。
- 将文件集中在一处,并让最新版本一目了然。
- 为请求提供正式的归属,而不是散落在各处的邮件中。
- 让你显得井井有条,这对客户留存和推荐非常重要。
如果你只有一两位客户,而且没有敏感信息,一个共享文档或文件夹可能就足够了。当你拥有大量客户、有重复性工作,或者需要防止客户看到彼此的信息时,构建门户才值得。
客户门户需要什么
| 部分 | 客户看到的内容 | 你看到的内容 |
|---|---|---|
| 登录 | 他们自己的账户 | 所有客户及其用户 |
| 概览 | 当前进度、下一个里程碑、等待客户处理的事项 | 每个项目的进度一目了然 |
| 文件 | 与他们共享的文档和交付物;他们上传的文件 | 所有文件,按客户和项目分类 |
| 请求 | 用于提出请求的表单,以及过往请求的状态 | 待分配和待回复的请求队列 |
| 消息或更新 | 其项目更新的时间线 | 同样的时间线,外加客户看不到的内部备注 |
| 发票 | 他们欠款多少、已付多少,并带有付款链接 | 跨客户的账单状态 |
| 审批 | 批准设计、报价或交付物 | 谁在何时批准了什么 |
先从登录、概览、文件和请求开始。当客户真正需要时,再添加发票、审批和消息功能。
数据
一个典型的门户包含:客户(公司)、客户用户(登录的人,各自隶属于一个客户)、你的团队成员、项目(隶属于一个客户)、里程碑或进度更新、文件(隶属于一个项目)、请求,以及可选的发票。关键的设计原则是:每条记录都应能追溯到恰好一个客户。这样权限就容易落实,也容易检查。
权限
把这些规则写下来并进行测试:
- 客户用户只能看到属于其所在客户的项目、文件、请求和发票。
- 内部备注绝不向客户显示。
- 团队成员只能看到分配给自己的客户;如果你的团队很小,也可以看到全部客户。
- 文件链接是私有的且有时效限制,而不是任何人都能分享或猜到的公开 URL。
- 移除某位客户用户后,其访问权限立即失效。
这些检查必须在服务器端进行。如果门户在浏览器中加载所有客户的数据,再在前端过滤,那它就不是私密的。
决定与权衡
登录方式
客户很少登录,因此经常忘记密码。对于门户而言,魔法链接(通过邮件发送的登录链接)或使用客户已有账户的单点登录,通常比密码更好用。无论选择哪种,都应由你这边邀请客户,而不是让任何人自行注册。我们关于为应用添加登录的指南对比了各种选项。
一个门户还是每个客户一个门户
一个带有客户列表的应用,比为每位客户单独搭建网站更容易维护。在同一个应用中,你仍然可以为每位客户提供带有其品牌特色的体验,例如他们的标志和项目名称。
文件
使用正规的文件存储,而不是把上传的文件保存在服务器自身的磁盘上;设置最大文件大小;如果可以,限制文件类型;并且只向通过权限检查的用户提供文件。还要决定版本如何管理:覆盖,还是保留历史。
发票与付款
你可以展示来自会计工具的发票,可以在门户中生成简单的发票,也可以链接到托管的付款页面。构建完整的开票系统本身就是一个独立的项目,参见如何构建开票应用。对于门户来说,展示发票状态并提供指向托管结账页面的“立即付款”链接,通常就已足够。
集成
许多门户会从你已在使用的工具中获取进度信息,例如项目跟踪器、CRM 或会计软件,从而避免你在两个地方更新数据。集成能节省时间,但也会增加设置和维护的工作。如果你的团队已经在使用 CRM,可以考虑将门户构建在同一份数据之上。
给 AI 构建器的第一条提示
为 Northlight(一家小型网页设计代理机构)构建一个客户门户。客户是公司;每家公司有一个或多个登录的客户用户。客户用户只能看到自己公司的项目。对于每个项目:当前状态(发现、设计、开发、审阅、上线)、带日期的下一个里程碑、双方都可以上传和下载的文件区(PDF、图片、ZIP,最大 50 MB)、带有标题、详情和优先级的请求表单,以及其过往请求及状态的列表,还有一条更新时间线。代理机构员工拥有一个管理区,可以查看所有客户,修改项目状态,发布更新,添加客户永远看不到的内部备注,并回复请求。所有访问规则都必须在服务器端强制执行。数据保存在数据库中,文件保存在私有文件存储中,并使用有时效的下载链接。目前使用占位登录,我们之后再添加真正的认证。设计清爽、专业,并在手机上表现良好。
按步骤构建:先做数据和管理端,再做客户端视图,然后是真正的登录,接着是文件,最后是其他附加功能。如何为 AI 应用构建器编写提示词提供了更多模式。
构建步骤
- 先列出客户需要看到什么,以及他们目前总是通过邮件问你什么。
- 设计数据,确保每条记录都属于某一位客户。
- 构建管理端视图,并录入一位真实客户的数据。
- 为该客户构建客户端视图。
- 添加真正的登录,由你这边发出邀请。
- 添加文件功能,将文件保存在私有存储中,并在下载时进行权限检查。
- 测试权限:创建两个测试客户,并尝试所有能看到对方数据的方式,例如修改 URL 中的 ID、猜测文件链接、使用过期的邀请。
- 添加请求和邮件通知。
- 与一两位友好的客户试点,并询问他们仍然在通过邮件问你什么。
- 根据反馈添加发票、审批或集成。
常见错误
- 在浏览器中而不是服务器上过滤数据。 这是门户最严重的漏洞:每位客户的数据都被下载下来了,只是被隐藏了。
- 公开的文件 URL。 任何人都能打开的共享链接会让门户失去意义。
- 开放注册。 客户应当被邀请,而不是能够自行创建账户并选择公司。
- 上线时功能过多。 客户看不懂的门户会被忽视,人们仍然会回到邮件。
- 两个数据源。 如果进度既保存在你的项目工具中,又保存在门户中,其中一个必然会过时。选择一个,或者让它们同步。
- 忘记离职流程。 当客户的员工离职时,其访问权限必须随之终止。
- 在没有适当保护的情况下存储受监管数据。 健康、法律或财务记录可能有你必须满足的法律要求。
成本与工具
持续的运行成本包括托管、数据库、文件存储(会随你共享的文件增长而增加),以及用于发送邀请和通知的邮件服务商。如果你使用托管的登录服务或付款服务商,请到其官网查看当前的价格。与按席位收费的门户软件相比,你自建门户的成本会随使用量增长,而不是随客户数量增长。
何时现成的产品更好
当你所在的行业有特定要求时,例如具有法律效力的电子签名、受监管的记录保存、税务文件交换,或者你现有的工具已经包含门户功能,那么客户门户软件,以及会计、法律或事务管理工具内置的门户功能,可能是更好的选择。这些产品已经处理了合规和支持问题。当你的工作流程不适合通用门户、你希望门户与你的品牌和流程完全契合,或者按客户或按席位收费已经不再适合你时,就自己构建。
使用 Mythex 构建
Mythex 可以根据上面的提示词构建这个门户:客户视图、管理视图、请求和时间线,并在应用需要时添加专用的 Postgres 数据库和文件存储。客户登录由你自行提供:Mythex 账户是为构建应用的人准备的,而你可以为客户选择一种由代理接入的认证方式。Mythex 没有内置的电子签名或开票产品,因此这些都需要通过集成或你自己构建的功能来实现。任何 API 密钥请使用项目密钥保存,并在正式发布前使用应用内测试器点击浏览客户和管理端的流程。
文档中有客户门户用例,并介绍了文件存储和添加登录。如需提示词起点,可以试试代理机构客户门户模板,或浏览应用模板。在邀请真实客户之前,请先按照我们的AI 构建应用安全检查清单走一遍。
常见问题
什么是客户门户?
客户门户是一个私密的、需要登录的区域,企业的客户可以在其中查看自己工作的进度、交换文件、提出请求并查看发票,而无需全部通过电子邮件进行。每位客户只能看到自己的信息。
客户门户应该具备哪些功能?
从安全登录、每个项目的进度概览、文件区和发送请求或消息的方式开始。发票、审批、电子签名和日程安排可以在客户真正需要时再添加。
自己构建客户门户安全吗?
只要你在服务器端强制执行“每位客户只能看到自己的记录和文件”,使用可靠的登录,将文件保存在私有存储中,并通过尝试打开其他客户的数据来测试,就是安全的。健康记录等受监管的信息需要额外的保护,可能更适合使用专业化的产品。
我可以不写代码就构建客户门户吗?
可以。AI 应用构建器和无代码工具可以根据描述构建客户门户。但你仍需精确地定义谁能看到什么,并在邀请真实客户之前仔细测试这些规则。