自由活动账户草稿 - 法人
Draft Checking Legal Person 流程允许分两步创建账户开户申请:
- POST:以最大灵活性创建草稿(draft)——从最少数据到完整数据均可接受
- PATCH:将草稿提交处理,验证所有必填字段的完整性
重要:此流程正在为与 Monte Bravo 的集成做准备。POST 和 PATCH 之间的字段划分将在与 Monte Bravo 确认每个流程节点可用数据后进行调整。
创建法人账户草稿
Request
ENDPOINT
/v2/account_request/draft_checking_legal_person MÉTODO
POST描述
此端点为法人(Legal Person)创建账户开户草稿。POST 接受从最少数据到完整数据,提 供最大灵活性。
灵活性策略
- 最少数据:CNPJ + 名称 + 人员类型
- 部分数据:根据可用情况添加字段
- 完整数据:一次性发送全部(较少见)
示例 1:最小载荷(仅必填项)
Request Body
{
"account_owner": {
"company_document_number": "46073462000130",
"name": "EMPRESA EXEMPLO TECNOLOGIA LTDA",
"person_type": "legal"
}
}
{
"request_control_key": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"account_owner": {
"company_document_number": "46073462000130",
"name": "EMPRESA EXEMPLO TECNOLOGIA LTDA",
"person_type": "legal"
}
}
行为:如果再次使用相同的 request_control_key,将返回 409(Conflict)错误,而不是创建新草稿。
示例 2:完整载荷(一次性发送全部数据)
Request Body
{
"account_owner": {
"company_document_number": "46073462000130",
"name": "EMPRESA EXEMPLO TECNOLOGIA LTDA",
"person_type": "legal",
"email": "empresa@exemplo.com.br",
"phone": {
"country_code": "055",
"area_code": "11",
"number": "999999999"
},
"trading_name": "Empresa Exemplo",
"company_type": "LTDA",
"foundation_date": "2010-01-15",
"cnae_code": "6209-1/00",
"company_statute": "92c93e9e-b249-46b7-8c2e-95d4955a3c39",
"monthly_revenue": 150000.00,
"address": {
"street": "Av. Brigadeiro Faria Lima",
"state": "SP",
"city": "São Paulo",
"neighborhood": "Jardim Paulistano",
"number": "2391",
"postal_code": "01452905",
"complement": "Conjunto 102"
},
"company_representatives": [
{
"name": "João Carlos da Silva",
"email": "joao.silva@exemplo.com.br",
"birth_date": "1985-03-20",
"individual_document_number": "12345678901",
"is_pep": false,
"final_beneficiary": true,
"mother_name": "Maria da Silva",
"nationality": "brasileira",
"person_type": "natural",
"phone": {
"country_code": "055",
"area_code": "11",
"number": "988888888"
},
"address": {
"street": "Rua das Flores",
"state": "SP",
"city": "São Paulo",
"neighborhood": "Jardins",
"number": "123",
"postal_code": "01310100",
"complement": "Apto 45"
},
"representative_relationship": "ceo",
"gender": "male",
"marital_status": "married",
"documents": {
"cnh": {
"ocr_key": "7a73be1a-0b66-4c0a-932a-1d1d02efdc4c"
}
}
}
]
}
}
Response
STATUS
201Response Body
{
"account_request_key": "abc123-def456-...",
"account_request_status": "draft",
"account_info": {
"account_number": "1638634",
"account_digit": "3",
"account_branch": "0001"
}
}
注意
account_request_key 字段必须保存,并将用于通过 PATCH 提交草稿。
请求体参数
| 字段 | 类型 | 描述 | 字符数 |
|---|---|---|---|
request_control_key | string | 用于保证幂等性的 UUID(36 字符) | 36 |
reserved_account_key | string | 预留账户的 UUID(36 字符) | 36 |
account_owner * | object | 账户持有人信息(法人) | account_owner 对象(POST) |
account_owner 对象(POST)
| 字段 | 类型 | 描述 | 字符数 |
|---|---|---|---|
company_document_number * | string | 公司 CNPJ(14 位,仅数字) | 14 |
name * | string | 公司法定名称 | 100 |
person_type * | enum | 人员类型(始终为 "legal") | person_type 枚举值 |
email | string | 公司电子邮箱(有效邮箱格式) | 254 |
phone | object | 公司电 话 | phone 对象 |
trading_name | string | 公司商号 | 200 |
company_type | enum | 公司组织形式 | company_type 枚举值 |
foundation_date | string | 成立日期(格式:YYYY-MM-DD) | 10 |
cnae_code | string | CNAE 活动代码 | 9 |
company_statute | string | 公司章程 UUID(UUID 格式) | 36 |
monthly_revenue | number | 月营业额 | - |
address | object | 公司完整地址 | address 对象 |
company_representatives | array | 法定代表人列表(发送时至少 1 人) | company_representatives 对象 |
POST 中的必填字段
POST 中只有 3 个字段为必填:
company_document_numbernameperson_type
其余所有字段均为可选,可根据可用情况发送。
代表人验证
如果在 POST 中发送 company_representatives,必须至少包含 1 个项目(minItems: 1)。每位代表必须填写所有必填字段(见 PATCH 部分)。每位代表内的 documents 字段在 POST 中为可选。
提交法人账户草稿
Request
ENDPOINT
/v2/account_request/{account_request_key}/draft_checking_legal_person MÉTODO
PATCH描述
此端点提交草稿进行处理。PATCH 验证完整性——所有必填字段必须存在于 PATCH 载荷中。
⚠️ 重要:PATCH 会用所发送的载荷完全覆盖 account_owner 的数据。这意 味着:
- 您必须在 PATCH 载荷中发送所有必填字段,即使这些字段已在 POST 中发送过
- 仅在 POST 中发送的数据如果不在 PATCH 中重新发送将丢失
- 此行为是完全替换,不是合并/部分更新
- 每个
company_representative中的documents字段为必填,必须至少包含一种有效证件类型(身份证、驾照、RNE、CRNM、护照或数字 CIN)
提交成功后,状态从 draft 变更为 pending_bacen_validation,并启动 Bacen Protege+ 验证。
Request Body
Request Body
{
"account_owner": {
"company_document_number": "46073462000130",
"name": "EMPRESA EXEMPLO TECNOLOGIA LTDA",
"person_type": "legal",
"email": "empresa@exemplo.com.br",
"phone": {
"country_code": "055",
"area_code": "11",
"number": "999999999"
},
"trading_name": "Empresa Exemplo",
"company_type": "LTDA",
"foundation_date": "2010-01-15",
"cnae_code": "6209-1/00",
"company_statute": "92c93e9e-b249-46b7-8c2e-95d4955a3c39",
"monthly_revenue": 150000.00,
"address": {
"street": "Av. Brigadeiro Faria Lima",
"state": "SP",
"city": "São Paulo",
"neighborhood": "Jardim Paulistano",
"number": "2391",
"postal_code": "01452905",
"complement": "Conjunto 102"
},
"company_representatives": [
{
"name": "João Carlos da Silva",
"email": "joao.silva@exemplo.com.br",
"birth_date": "1985-03-20",
"individual_document_number": "12345678901",
"is_pep": false,
"final_beneficiary": true,
"mother_name": "Maria da Silva",
"nationality": "brasileira",
"person_type": "natural",
"phone": {
"country_code": "055",
"area_code": "11",
"number": "988888888"
},
"address": {
"street": "Rua das Flores",
"state": "SP",
"city": "São Paulo",
"neighborhood": "Jardins",
"number": "123",
"postal_code": "01310100",
"complement": "Apto 45"
},
"representative_relationship": "ceo",
"gender": "male",
"marital_status": "married",
"documents": {
"rg": {
"ocr_front_key": "0aa8a4ca-5873-49bd-851c-1f2c71a1cc28",
"ocr_back_key": "29f6e346-7fae-4dcb-9ea1-2a3e4ef593ea"
},
"cnh": {
"ocr_key": "7479c8e4-2a5d-4b4d-b2eb-4b841ec9390d"
}
},
"face": "68da08f1-6cf4-4dce-a297-7b2f09311784"
}
]
},
"additional_documents": [
"61f2a65e-0ddf-4932-874f-9231794963da"
]
}
Response
STATUS
200Response Body
{
"account_request_key": "abc123-def456-...",
"account_request_status": "pending_bacen_validation",
"account_info": {
"account_number": "1638634",
"account_digit": "3",
"account_branch": "0001"
}
}
Bacen Protege+ 流程
提交成功后,状态变更为 pending_bacen_validation。系统在进行 KYC 分析前会先向 Bacen Protege+ 进行预验证。Bacen 批准后,状态将自动更新为 pending_kyc_analysis。
请求体参数
| 字段 | 类型 | 描述 | 字符数 |
|---|---|---|---|
additional_documents | array | 附加文件 UUID 列表(UUID 数组) | - |
account_owner * | object | 账户持有人完整信息(法人) | account_owner 对象(PATCH) |