概览
registerBusiness mutation 会在 Fluz 平台上创建一个企业账户。一次调用即可完成:- 创建与现有 Fluz 用户(主要所有者)关联的企业账户,
- 存储法律实体记录——法定名称、组织结构、税号、注册州、法定地址、类别以及账户的预期用途,
- 存储你提供的每位所有者的实益所有权信息,以及
- 为合规审查开启一个 KYB(了解你的企业) 案件。
accountId,以及 PENDING 的 kybStatus。注册成功表示 Fluz 已接受并验证你的提交——这并不代表企业已获批。审批将在 KYB 审查完成后异步发生。
注册是校验,不是审批。 带有
kybStatus: PENDING 的 success 响应确认了负载通过了字段级校验,并已开启 KYB 案件。构建集成时请等待状态为已批准后再尝试为账户注资或发卡。企业账户可解锁的功能
一旦 KYB 获批,企业账户即可用于平台的商业场景:- 企业消费账户和余额
- 商业虚拟卡,包括批量发卡
- 授权用户与卡级别的消费控制
- 卡片、转账与报销的审批流
- 企业级交易报告与费用注释
何时使用此端点
当你的平台在 Fluz 轨道上为企业进行入驻,且你希望在自有 UI 中采集实体与所有权数据而不是将用户引导至 Fluz 托管流程时,使用registerBusiness。如果你更希望由 Fluz 托管采集与文档上传体验,请与客户经理沟通基于小部件的入驻选项。
注册流程
端到端时序
步骤详解
1
确保主要所有者是已注册的 Fluz 用户
在
owners 数组中至少有一名所有者——主要所有者——必须已是 Fluz 用户,并且你为该所有者发送的 emailAddress 必须与其 Fluz 账户上的邮箱完全一致。如果该人尚无账户,请先使用 registerUser 创建。Fluz 建议主要所有者在提交企业信息之前或同时完成身份验证(KYC),因为所有者身份数据会作为 KYB 的一部分进行审查。2
确认你的应用持有 REGISTER_BUSINESS scope
应用级授权和个人用户授权都必须处于激活状态。参见 Application Scopes。
3
解析企业类别与子类别
调用 getBusinessCategories,并让用户选择一个类别及该类别下的一个子类别。不要硬编码这些 UUID——它们可能变更,而且来自不同类别的子类别将因
BS-0006 被拒绝。4
如适用,上传个体工商户证明文件
仅当
businessStructure 为 SOLE_PROPRIETORSHIP 时必需。先上传文件,然后将返回的 URL 传入 soleProprietorshipDocumentUrl。参见提交企业文件。5
提交 registerBusiness mutation
在一次调用中发送完整的实体记录和所有所有者。按响应详情所述处理响应——错误会返回在负载内,而不是作为 GraphQL 错误。
6
等待 KYB 决策,然后进行开通配置
账户会以
PENDING 状态创建。请向用户展示该状态,而不是暗示他们已可使用。一旦状态变为已批准,创建消费账户并发卡。KYB 状态生命周期
注册后如何检查状态
目前没有 KYB 的 webhook 事件,因此你的集成应在用户返回企业入驻界面时读取状态,并以低频后台计划(例如每小时一次——不要在每次页面加载时)进行轮询。 你可以使用getAccountsByUserId 确认企业账户已存在并将其与用户对应:
审核通常会在一至两个工作日内完成,但当被要求补充文件时可能更久。如果某个案件看似停滞,请联系你的客户经理并提供
accountId,而不是重新提交——第二次提交会被 BS-0007 阻止。所需 scope
基本 mutation 结构
参数
地址格式使用下方的结构化字段格式化
businessLegalAddress 与每位所有者的 address,并确保是真实可投递地址,且城市 / 州 / 邮编一致。企业法定地址可以是国际地址(国家名称采用 ISO 3166;部分国家受限,如俄罗斯或伊朗)。所有者地址必须为美国地址。 格式错误或不匹配将返回 BS-0002(企业法定地址)或 BS-0003(所有者信息)。详见地址格式要求。BusinessLegalAddress
BusinessOwner
OwnerAddress
BusinessStructure(枚举)
不在此列表中的结构将以
BS-0005 被拒绝。信托、非营利组织和其他实体类型将个案处理——在针对这些类型构建之前,请联系你的客户经理。
BusinessAccountUsage(枚举)
发送所有适用的取值。如果没有合适的,省略
businessAccountUsage,并在 businessAccountUsageOther 中描述预期用途。选择你的应用未获批的用途类型将返回 BS-0004。
实益所有权要求
KYB 审查依赖于一次性准确获取所有权信息。请收集并提交:- 每一位直接或间接持有该实体25% 或以上股份的个人。
- 一名控制人——对实体管理负有重要责任的个人(CEO、CFO、管理成员、普通合伙人或类似),即使其不持股。将其以
ownershipPercentage为0且提供准确title提交。 - 至少一位已注册 Fluz 用户的所有者,且
emailAddress必须匹配。
- 数组中
ownershipPercentage的总和不得超过 100,但不需要等于 100。若企业由三名个人按 40/35/25 持股,外加一名不持股的 CEO,请提交四人,持股百分比分别为 40、35、25 和 0。 - 若由实体(而非个人)持股,请穿透至其背后的个人并提交这些个人。
title为自由文本,但会由人工审核。请使用易识别的头衔(如“Chief Executive Officer”“Managing Member”),而非内部缩写。
校验速查
大多数BS-000x 错误源于格式问题。提交前请检查:
文件
个体工商户必须在注册前上传支持性文件,且任何组织结构都可能在 KYB 审查期间被要求提供更多文件。两条路径均在此页面说明:提交企业文件
上传端点、可接受的个体工商户文件,以及在合规要求更多信息时应如何处理。
响应详情
RegisterBusinessError
失败会在响应负载内返回,而不是顶层 GraphQL 错误。请始终根据是否存在
error(或 success === false)进行分支,而不是依赖 HTTP 状态或 GraphQL errors 数组。cURL 示例
示例响应
成功
错误
错误代码
在测试环境进行测试
- 请针对上述示例所示的测试 GraphQL 端点进行注册。参见测试 vs. 生产环境。
- 对地址使用测试地址,可确定性地通过校验。
- 测试环境中的 EIN 仍需满足
XX-XXXXXXX格式,但不需要对应真实实体。 - 由于一个用户不能持有两个未结申请(
BS-0007),请使用不同测试用户测试重复注册路径。
最佳实践
- 先做客户端校验。 除
BS-0007外的每个BS-000x代码都是你可以在网络请求前捕获的格式或选择问题。这样做能显著提升入驻完成率。 - 在运行时获取类别。 切勿硬编码类别 UUID。
- 不要在 KYB 被拒后自动重试。 重新提交不会改变结果,且会产生重复案件。
- 立即存储
accountId。 它是你获取该申请的唯一句柄,也是支持团队会索要的参考信息。 - 如实传达待审核状态。 告知用户企业正在审核以及大致耗时,而不是直接让他们进入尚无法交易的企业控制台。
- 首次就完整收集所有权信息。 缺失实益所有者是审查因补充文件而停滞的最常见原因。
备注
- 指定账户用途时,
businessAccountUsage与businessAccountUsageOther必须二选一填写。 - 若用户已有进行中的申请,则无法注册新企业。必须等待当前申请被批准或被拒后才能再次提交。
相关页面
提交企业文件
上传个体工商户文件并响应 KYB 的文件补充请求。
企业类别
获取本次 mutation 所需的类别与子类别 ID。
注册客户
创建将作为主要所有者的 Fluz 用户。
地址格式要求
规范法定地址与所有者地址对象的规则。