# 统一接收分发中转接口设计文档

---

> **维护说明（重要）**：
> 本文档是**面向三方系统对接**的统一中转 API 规范，只描述对外接口契约（请求/响应信封、PushType 与 Data 业务字段、响应格式、异步回调等），**不含各落地仓库的内部实现细节**（状态机、数据库结构、RPA 交互、内部端点等）。
> 其他项目 / 仓库在更新本文档时，**只允许补齐第 4 点（Data 业务字段结构）中的 data 数据字段及说明**，不得新增或维护落地实现章节。

---

## 1. 概述

### 1.1 接口定位

本接口是一个**国家无关**的统一中转 API：接收 SaaS 系统的推送请求，根据 `Country` + `PushType` 自动路由到对应业务处理（文件生成 / 数据受理），并返回统一格式响应。对接方只需按本文档构造请求、解析响应，无需关心系统内部处理细节。

```
SaaS 调用方
   │ POST 请求（PushType / Country / Data / files / bizParam）
   ▼
统一中转接口
   │ 参数校验 → 业务处理 → 统一响应（{code, msg, data, ProcessMode, bizParam}）
   ▼
SaaS 调用方
```

### 1.2 对接方式

- HTTP `POST` + `Content-Type: application/json`，一个请求对应一个 PushType。
- 所有响应统一为 JSON 信封 `{code, msg, data}`，成功时附加 `ProcessMode` 与 `bizParam`（原样回传）。
- 文件生成类接口返回文件数组或文件槽（§5）；注册受理类返回落库结果；异步流程完成后通过回调接口通知调用方（§7）。

---

## 2. 接口规格

### 2.1 基本信息

| 项目           | 值                                                         |
| -------------- | ---------------------------------------------------------- |
| **接口名称**   | 统一接收分发中转接口                                       |
| **请求方式**   | POST                                                       |
| **Content-Type** | application/json            |
| **入口文件**   | `api.php`      |
| **测试环境**   | `http://rpa.test.fix.usaeu.com/app_withdrawn/api.php`     |
| **生产环境**   | `http://rpa.fix.usaeu.com/app_withdrawn/api.php`          |

### 2.2 请求参数

| 参数       | 类型   | 必填 | 说明                                                         |
| ---------- | ------ | ---- | ------------------------------------------------------------ |
| `PushType` | string | 是   | 推送类型（动态路由键，枚举见 [3. PushType 枚举](#3-pushtype-枚举)，如 `DE_VAT_REGISTER_FILE`） |
| `Country`  | string | 是   | 国家二字码（DE / FR / BE / GB / IT / ES / SE ...，见附录 A）                     |
| `Data`     | object | 否   | 业务数据（**扁平业务字段**：键为业务字段名，见 [4. Data 结构](#4-data-业务字段结构)；兼容旧格式 `modules` + `formInfo`） |
| `files`    | array  | 否   | 文件生成结果数组（**注册受理专用**，如 `DE_VAT_REGISTER` / `FR_VAT_REGISTER` / `IT_VAT_REGISTER_ANR3`，由文件生成流程回填或 SaaS 直接提供）：每项含 `url`（OSS 相对路径）/`name`（文件名）/`type`（见 §5.2）；**落库时直接使用，不再下载上传**。德国=五合一文件（`N_IN_ONE_FILE`），法国=5 类自动生成 PDF（`AUTHORIZATION_LETTER` 等英文枚举），意大利 ANR3=税号证书 PDF（`TAX_CERTIFICATE`） |
| `bizParam` | object | 否   | 业务标识信息（顶层，与 `PushType`/`Country`/`Data` 同级），**原样回传**。字段要求按 PushType 确定；不得把其他流程的文件命名或防重字段套用于法国流程 |

> **`bizParam` 原样回传约定（所有应答通用）**：请求顶层携带的 `bizParam`（兼容 `Data.bizParam`）在**任何应答中原样返回**——同步处理响应、异步受理响应、注册受理响应、失败响应（§2.3），以及异步结果回调接口（§7）的通知体中，均原样携带，字段值不做任何修改、删除或增添。

**请求体示例（扁平业务字段）：**

```json
{
  "PushType": "DE_VAT_REGISTER_FILE",
  "Country": "DE",
  "bizParam": {
    "BusinessSerialNumber": "DVAT12312312312312313",
    "BusinessId": 123456,
    "projectId": 1
  },
  "Data": {
    "NameCN": "枝江市霞陆逊商贸有限公司",
    "NameEng": "zhijiangshixialuxunshangmaoyouxiangongsi",
    "RegNumber": "91420583MADDMTJE7M",
    "LegalPersonName": "刘振华",
    "LegalPersonIdNumber": "510681198706252865",
    "BusinessLicensePic": "[{\"fileUrl\":\"common-test/2026/08/06/019baf3f-801e-45aa-bf6d-a80c2b07e15d.jpg\",\"fileName\":\"DownAnnexesFileByFileUrl.jpg\"}]",
    "StoreFBAAcitveSetSetScreenShot": "[{\"fileUrl\":\"common-test/2026/08/07/8388e6e0-87fd-4bd0-b881-392fbd7d6bb2.png\",\"fileName\":\"4359bc31121b45fd974bf91f0e1dff1b.png\"}]"
  }
}
```

### 2.3 响应格式

**sync 模式成功响应（实时处理，直接返回文件相对路径）：**

```json
{
  "code": 200,
  "msg": "success",
  "ProcessMode": "sync",
  "data": [
    {
      "url": "common-test/generatefile/2026/de_declar_delay/DVAT12312312312312313_123456_alle Anhänge in einem Dokument.pdf",
      "name": "DVAT12312312312312313_123456_alle Anhänge in einem Dokument.pdf",
      "type": "N_IN_ONE_FILE"
    }
  ],
  "bizParam": {
    "BusinessSerialNumber": "DVAT12312312312312313",
    "BusinessId": 123456
  }
}
```

> `data` 为**文件数组**，每项含 `url`（OSS 相对路径）、`name`（文件名）、`type`（文件类型枚举，见 [5.2 文件类型枚举](#52-文件类型枚举)），无文件时返回空数组 `[]`。
>
> `url` 返回 **OSS 相对路径（不含域名）**，域名由调用方侧拼接，完整 URL 形如 `https://usaeu-1259285998.cos.ap-guangzhou.myqcloud.com/{相对路径}`；示例中 `common-test` 为测试路径前缀、`common` 为生产路径前缀。
>
> `bizParam` 为**请求原样回传**（请求顶层 `bizParam`，兼容 `Data.bizParam`），不管里面有多少个字段均原样返回；其字段用途按 PushType 定义：例如 DE 文件命名可使用 `BusinessSerialNumber`/`BusinessId`；FR-LEKO 仅需 `BusinessSerialNumber`，FR-CITEO 无固定必填子字段。

**async 模式成功响应（异步受理，`data` 为 `null`，文件生成完成后按 §7 回调通知）：**

```json
{
  "code": 200,
  "msg": "success",
  "ProcessMode": "async",
  "data": null,
  "bizParam": {
    "BusinessSerialNumber": "DVAT12312312312312313",
    "BusinessId": 123456
  }
}
```

**注册受理成功响应（DE_VAT_REGISTER / FR_VAT_REGISTER / IT_VAT_REGISTER 系列，数据落库，`data` 为落库结果对象）：**

```json
{
  "code": 200,
  "msg": "插入记录成功",
  "data": {
    "order_serial_number": "DVAT12312312312312313",
    "tid": "0825",
    "record_id": 12
  },
  "bizParam": {
    "BusinessSerialNumber": "DVAT12312312312312313",
    "BusinessId": 123456
  }
}
```

> 注册受理类 PushType 由系统将 `Data`/`files` 透传至对应注册处理服务并落库，**ProcessMode 默认 `async`**（受理即返回，供门户注册消费）；`data` 为落库结果对象：德国返回 `order_serial_number` + `record_id`，法国/意大利返回 `tid`（法国取 `Data.Code`，意大利为 `bizParam.BusinessSerialNumber`）+ `record_id`，`bizParam` 原样回传。
>
> 幂等：同一业务单号（德国 `bizParam.BusinessSerialNumber`，法国 `Data.Code`，意大利 `bizParam.BusinessSerialNumber`）重复推送时更新已有记录；已成功处理的记录直接跳过。
>
> 受理失败返回 `code=400`（校验错误分号拼接），`data=null`。

**失败响应：**

```json
{
  "code": 400,
  "msg": "缺少必需参数：PushType",
  "data": null
}
```

### 2.4 状态码说明

| code | 含义                       | 示例                                          |
| ---- | -------------------------- | --------------------------------------------- |
| 200  | 请求成功                   | 文件生成完成                       |
| 400  | 请求参数错误 / 业务处理失败 | 缺少参数 / 国家不支持 / 当前状态不允许操作 / `PushType` 未配置    |
| 500  | 服务器内部错误             | 数据库连接失败 / 处理异常               |

### 2.5 PushType 命名规则

```
命名格式：{国家二字码}_{业务大类}_{REGISTER}_{业务小类}_{业务细分小类}（段位可省略，往后拼接）
后缀约定：
  - 末尾带 _FILE        → 自动生成文件（生成文件并上传 OSS 后回传 URL）
  - 末尾不带 _FILE      → 门户网站自动注册 / 数据受理（受理数据，由系统的注册通道完成门户注册）

示例:
  PushType="DE_VAT_REGISTER_FILE"    → 德国 VAT 注册（自动生成文件）
  PushType="DE_VAT_REGISTER"         → 德国 VAT 注册（门户网站自动注册）
  PushType="DE_EPR_REGISTER_PACK_FILE" → 德国 EPR 包装法注册（自动生成文件）
  PushType="DE_EPR_REGISTER_PACK"      → 德国 EPR 包装法注册（门户网站自动注册）
```

> 同一业务可同时存在 `_FILE` 与不带 `_FILE` 两个 PushType。既有类型 `IT_EPR_REGISTER` 等不遵循 `_FILE` 后缀约定，实际取值以 §3 清单为准。
>
> 未支持的 `PushType` / `Country` 返回 `400「没有找到对应的pushtype」`。

---

## 3. PushType 枚举

`PushType` 即接口的业务路由键，格式为 `{国家二字码}_{业务大类}_{REGISTER}_{业务小类}_{业务细分小类}` 往后拼接。按处理方式分类如下：

| PushType | 处理方式 | 响应 `data` | 说明 |
| --- | --- | --- | --- |
| `DE_VAT_REGISTER_FILE` | 文件生成（sync） | 文件数组（§5.1）：1 个 `N_IN_ONE_FILE` | 德国VAT注册五合一文件生成（见 §4.4.1） |
| `DE_VAT_REGISTER` | 注册受理（async） | `{order_serial_number, record_id}` | 德国VAT注册自动受理（门户自动注册，需顶层 `files` 五合一文件，见 §4.4.10） |
| `FR_VAT_REGISTER_FILE` | 文件生成（sync） | 文件数组：5 个文件（§5.3） | 法国VAT注册文件生成（见 §4.4.5） |
| `FR_VAT_REGISTER` | 注册受理（async） | `{tid, record_id}` | 法国VAT注册自动受理（门户自动注册，需顶层 `files` 5 类自动生成 PDF，见 §4.4.11） |
| `IT_VAT_REGISTER_AA7` | 注册受理（async） | `{tid, record_id}` | 意大利VAT注册（AA7 税表，接口取数；见 §4.4.12） |
| `IT_VAT_REGISTER_ANR3` | 注册受理（async） | `{tid, record_id}` | 意大利VAT注册（ANR3 税表，欧盟公司，需顶层 `files` 税号证书 PDF，见 §4.4.13） |
| `ES_VAT_REGISTER_HAGUE_FILE` | 文件生成（async） | 文件槽（§5.4） | 西班牙VAT海牙文件（海牙待认证/030） |
| `ES_EPR_REGISTER_HAGUE_FILE` | 文件生成（async） | 文件槽 | 西班牙EPR海牙文件（盖章要求/海牙待认证/APODERAMIENTO/030，见 §4.4.3） |
| `ES_EPR_REGISTER_030_FILE` | 文件生成（async） | 文件槽 | 西班牙EPR030文件（见 §4.4.4） |
| `IT_EPR_REGISTER` | 文件生成（async） | 文件槽 | 意大利EPR注册文件（见 §4.4.6） |
| `FR_EPR_REGISTER_LEKO` | 文件生成（sync） | 文件槽：`{file1: LEKO XLSX, file2: POA PDF}` | 法国LEKO注册（见 §4.4.7） |
| `FR_EPR_REGISTER_CITEO` | 文件生成（sync） | 文件槽：`{file1: POA PDF}` | 法国CITEO注册（见 §4.4.8） |
| `FR_EPR_REGISTER_REFASHION` | 文件生成 | 文件槽 | 法国纺织法注册（POA） |
| `GB_VAT_REGISTER` | 数据接收（sync） | 落库结果 | 英国VAT注册数据接收（注册邮箱自动创建，见 §4.4.9） |
| `FR_EPR_REGISTER_PACK_FILE` | 文件生成 | 文件数组 | 法国包装注册文件 |
| `FR_EPR_REGISTER_电气_FILE` | 文件生成 | 文件数组 | 法国电气注册文件 |
| `FR_EPR_REGISTER_WEEE` / `FR_EPR_REGISTER_WEEE_FILE` | 预留 | — | 法国 EPR 的 WEEE 注册（预留） |
| `FR_EPR_REGISTER_WEEE_CONTRACT` / `FR_EPR_REGISTER_WEEE_CONTRACT_FILE` | 预留 | — | 法国 EPR 的 WEEE 添加合同注册（预留） |
| `SE_EPR_REGISTER_PACK` / `SE_EPR_REGISTER_PACK_FILE` | 预留 | — | 瑞典 EPR 自动生成文件（预留） |
| `BE_EPR_REGISTER_PACK` / `BE_EPR_REGISTER_PACK_FILE` | 预留 | — | 比利时 EPR 自动生成文件（预留） |

---

## 4. Data 业务字段结构

### 4.1 结构概述

`Data` 为**扁平业务字段对象**：键为业务字段名，值为字段值。文件类字段的值为 JSON 数组字符串（推荐）或原生 JSON 数组，两种格式均可，含 `fileUrl`（OSS 相对路径）+ `fileName`。

```
Data
├── 普通字段   { 业务字段名: 值 }                       例: "NameCN": "枝江市霞陆逊商贸有限公司"
├── 文件字段   { 业务字段名: "[{fileUrl,fileName}]" 或 [{fileUrl,fileName}] }   例: "BusinessLicensePic": "[{\"fileUrl\":...,\"fileName\":...}]"
└── 数组字段   { 业务字段名: [值,...] }                 例: "RegisteredCapitalCurrency": ["1","2"]
```

> **兼容旧格式**：若 `Data` 携带 `modules` + `formInfo`（动态表单 GUID 结构），接口按 GUID → 业务字段映射兼容解析。

### 4.2 字段类型

| 类型 | 值格式 | 说明 |
| ---- | ------ | ---- |
| 普通字段 | `"string"` / `"1"` / `"2024-03-22"` | 直接作为业务字段值 |
| 数组字段 | `["1","2"]` | 以逗号连接后使用（如注资币种） |
| 文件字段 | `"[{\"fileUrl\":\"...\",\"fileName\":\"...\"}]"` 或 `[{"fileUrl":"...","fileName":"..."}]` | JSON 数组字符串或原生 JSON 数组（两种格式均可），含 `fileUrl`（OSS 相对路径）+ `fileName` |

### 4.3 文件类字段清单

| 业务字段名 | 用途 |
| ---------- | ---- |
| `BusinessLicensePic` | 工商营业执照 |
| `LegalPersonIdNumberFrontPic` | 证件正面照 |
| `LegalPersonIdNumberBackPic` | 证件反面照 |
| `LegalSignedFile` | 上传签名文件 |
| `StoreFBAAcitveSetSetScreenShot` | FBA 开启截图 |
| `StoreWarehouseAddressScreenShot` | 仓库地址截图 |
| `StoreOtherSetScreenShot` | 店铺其他截图 |
| `StoreOverseaWarehouseContract` | 海外仓合同 |
| `StoreSellerProfileScreenShot` | 店铺主页截图 |
| `UploadFile1` | 英国 VAT 注册：法人证件（文件名含 passport/identity card/drive license，必填）→ 落库 `upload_file_path1` |
| `UploadFile2` | 英国 VAT 注册：支持文件 1（文件名含 bank statement/credit card statement/electricity bill 等关键词，首个匹配）→ 落库 `upload_file_path2` |
| `UploadFile3` | 英国 VAT 注册：支持文件 2（文件名含支持文件关键词的次个匹配，仅在存在第二个支持文件时传，非必填）→ 落库 `upload_file_path3` |

### 4.4 Data 业务字段说明（通用总表）

> 字段**只增不减**，所有国家 / 流程共用（括号标注适用流程：DE=德国 VAT、ES=西班牙海牙、FR-LEKO=法国 LEKO、FR-CITEO=法国 CITEO，未标注为通用字段）。**字段名不允许更改，只允许修改说明信息**。
>
> 本总表汇总多个国家和流程，表内"必填"不代表每个 PushType 都要求该字段。法国 LEKO/CITEO 必须以紧随其后的法国专属最小字段表和 §4.4.7/§4.4.8 为准，不继承 DE/ES/IT 的必填字段。

**法国 LEKO/CITEO 最小字段表（覆盖通用总表的必填标记）：**

| 流程 | 固定 Data | 条件 Data | bizParam |
| ---- | ---- | ---- | ---- |
| `FR_EPR_REGISTER_LEKO` | `NameEng`、`RegAddressEng`、`CompanyAddressLine1En`、`CompanyAddressPostcode`、`CityEngName`、`CountryTwoCode`、`RegNumber`、`LegalPersonFullNamePinYin`、`LegalPersonEmail`、`LegalPersonPhone`、`LegalPersonGender` | CN：`AreaName`；FR：`RegisteredCapital`、`RegisteredCapitalCurrency`；EU：`VATNumber` | 对象必传；仅 `BusinessSerialNumber` 必填 |
| `FR_EPR_REGISTER_CITEO` | `NameEng`、`CountryTwoCode`、`CityEngName`、`RegAddressEng`、`LegalPersonFullNamePinYin` | EU 且非 FR：`VATNumber`；其他国家：`RegNumber` | 对象必传；无固定必填子字段 |

> `InseeLegalForm`、`InseeNafCode`、`InseeSiret` 不是 Data 请求字段：法国 LEKO 的法律形式 / NAF 代码 / 总部 SIRET 由系统自动调用 INSEE 官方接口查询，调用方不得传值覆盖。`CompanyAddressLine2En` 不参与当前法国文件生成；其他字段即使作为扩展信息传入，也不参与本次法国文件内容、INSEE 查询或校验。

**公司信息：**

| 字段 | 类型 | 必填 | 说明 |
| ---- | ---- | ---- | ---- |
| `NameCN` | 字符串 | 是 | 企业中文名称 |
| `NameEng` | 字符串 | 是 | 企业英文全称（不能含中文；FR-LEKO 最长 50 个字符） |
| `RegNumber` | 字符串 | 条件必填 | 营业执照号码；ES 香港公司豁免；FR-LEKO 必填；FR-CITEO 在非欧盟公司或法国公司时必填 |
| `RegisteredCapital` | 字符串 | 条件必填 | 注册资本；FR-LEKO 且公司国家二字码为 `FR` 时必填 |
| `RegisteredCapitalCurrency` | 数组/字符串 | 条件必填 | 注资币种（如 `["1","2"]`）；FR-LEKO 且公司国家二字码为 `FR` 时必填 |
| `EstablishmentDate` | 日期 | 否 | 成立日期（YYYY-MM-DD） |
| `CityEngName` | 字符串 | 是 | 公司所在城市（英文）；FR-LEKO/FR-CITEO 生成时去除末尾"市"或 `shi` |
| `RegAddressEng` | 字符串 | 是 | 注册地址（英文，不能含中文）；FR-LEKO/FR-CITEO POA 模板输入 |
| `CompanyAddressLine1En` | 字符串 | 条件必填 | 公司地址第一行（英文）；FR-LEKO 必填且最长 100 个字符 |
| `CompanyAddressLine2En` | 字符串 | 否 | 公司地址第二行（英文）（ES/FR-LEKO 可选存档） |
| `CompanyAddressPostcode` | 字符串 | 条件必填 | 公司地址邮编；FR-LEKO 必填 |
| `CompanyAddressProvinceEn` | 字符串 | 是 | 公司地址省份（英文）（ES） |
| `CompanyCountry` | 字符串 | 是 | 公司所在国家（**国家二字码**，如 `CN`/`HK`；`HK` 判定为香港公司；系统从国家字典解析中文名/英文名/区域代码，找不到对应国家或缺少区域代码均报数据错误）（ES） |
| `Country` | 字符串 | 是 | 注册地址（国家）；ES 流程为 `CompanyCountry` 的兼容字段（取其一，传国家二字码） |
| `CountryTwoCode` | 字符串 | 条件必填 | 公司国家二字码；FR-LEKO/FR-CITEO 必填，用于国家条件校验、INSEE 查询决策、VAT 取值和省份默认值 |
| `AreaName` | 字符串 | 条件必填 | 公司省份/州；FR-LEKO 的 `CountryTwoCode=CN` 时必填，`HK` 服务端统一使用 `香港`，其他非 CN/HK 国家缺省使用大写国家二字码 |
| `LocalTaxNumber` | 字符串 | 否 | 本土税号（DE） |
| `VATNumber` | 字符串 | 条件必填 | VAT 税号；FR-LEKO 在欧盟国家时必填；FR-CITEO 在欧盟国家且国家不为 `FR` 时必填并作为 BusinessLicenseNo；ES 可缺省为空串 |
| `ExpectedSalesYear1` | 字符串 | 否 | 注册后第一年预计销售额（欧元）（DE） |
| `ExpectedSalesYear2` | 字符串 | 否 | 注册后第二年预计销售额（欧元）（DE） |
| `DELogisticsSituation` | 字符串 | 否 | 海外仓详细地址（DE） |
| `ProductsRange` | 字符串 | 否 | 产品销售类型（DE）；兼容旧字段名 `ProductsRange` |
| `BusinessPlatform_En` | 字符串 | 否 | 销售平台（1=亚马逊，2=速卖通，3=EBAY）（DE） |
| `ShopName` | 字符串 | 否 | 店铺名称（DE） |
| `ShopUrl` | 字符串 | 否 | 店铺链接（DE） |
| `ShopAccount` | 字符串 | 否 | 店铺 Seller ID(Token)（DE） |
| `SignatureDate` | 日期 | 否 | 签发日期（YYYY-MM-DD）（DE） |

**法人信息：**

| 字段 | 类型 | 必填 | 说明 |
| ---- | ---- | ---- | ---- |
| `LegalPersonName` | 字符串 | 是 | 法人中文姓名 |
| `LegalPersonNamePinyin` | 字符串 | 条件必填 | 法人英文名（拼音，不能含中文）；与 `LegalPersonSurnamePinyin` 拆分自旧字段 `LegalPersonFullNamePinYin`；FR-LEKO/FR-CITEO 用于模板和自动签名；ES 海牙必填（受理时按「名 姓」拼接为法人英文全名；旧字段 `LegalPersonFullNamePinYin` 已废弃，不再接受） |
| `LegalPersonSurnamePinyin` | 字符串 | 条件必填 | 法人英文姓（拼音，不能含中文）；与 `LegalPersonNamePinyin` 拆分自旧字段 `LegalPersonFullNamePinYin`；FR-LEKO/FR-CITEO 用于模板和自动签名；ES 海牙必填（受理时按「名 姓」拼接为法人英文全名；旧字段 `LegalPersonFullNamePinYin` 已废弃，不再接受） |
| `LegalPersonEmail` | 字符串 | 条件必填 | 法人邮箱；FR-LEKO 必填 |
| `LegalPersonPhone` | 字符串 | 条件必填 | 法人手机号码；FR-LEKO 必填，写入 LEKO XLSX 时移除 `+` 并将连字符替换为空格 |
| `LegalPersonGender` | 字符串 | 条件必填 | 性别；FR-LEKO 必填，`2` 映射为 `MRS`，其他值映射为 `MR`；ES 兼容 `1`/`男`/`H`/`HOMBRE` 与 `2`/`女`/`M`/`MUJER`，受理时规范化为 `H`(男)/`M`(女) |
| `Nationality` | 字符串 | 否 | 民族（`1`=汉 HAN，`2`=回 HUI），身份证翻译件使用 |
| `LegalPersonIdNumber` | 字符串 | 是 | 证件号码 |
| `LegalPersonIdStartDate` | 日期 | 是 | 证件有效期开始时间（YYYY-MM-DD） |
| `LegalPersonIdEndDate` | 日期 | 是 | 证件有效期截止时间（YYYY-MM-DD） |
| `LegalPersonIDCardType` | 字符串 | 是 | 法人证件类型：`1`/`身份证`/`IDCard` → `IDCard`；`2`/`护照`/`Passport` → `Passport`（受理时规范化）（ES） |
| `LegalPersonCountry` | 字符串 | 是 | 法人国籍（国家二字码，如 `CN`；ES 流程系统从国家字典解析中文名/英文名，找不到对应国家报数据错误） |
| `LegalPersonAddressPostcode` | 字符串 | 是 | 法人地址邮箱 |
| `LegalPersonBirthDate` | 日期 | 是 | 法人出生日期（YYYY-MM-DD） |
| `LegalPersonCityEngName` | 字符串 | 是 | 法人所在城市（英文） |
| `LegalPersonAddressProvinceEn` | 字符串 | 是 | 法人地址省份（英文）（ES） |
| `LegalPersonIDCardAddress` | 字符串 | 否 | 证件地址（中文原值，与 `LegalPersonIDCardAddressEng` 二选一） |
| `LegalPersonIDCardAddressEng` | 字符串 | 否 | 证件地址（拼音/英文） |

**流程控制：**

| 字段 | 类型 | 必填 | 说明 |
| ---- | ---- | ---- | ---- |
| `AR` | 字符串 | 是 | 授权机关模板：`M`=原模板，`O`=Onesea模板（ES；海牙授权书与 030 文件模板选择共用） |
| `SpecsName` | 字符串 | 是 | 规格名称（契约必填，传字符串即可）；本系统仅海牙文件生成，受理不做流程分流，含 `免海牙` 也照常海牙生成（ES） |
| `HagueType` | 数字 | 否 | 香港公司：`1`=包装法、`2`=包装法+VAT（需查册文件）、`3`=VAT（无需查册文件）（ES） |
| `BusinessCode` / `Code` | 字符串 | 否 | 业务编码（用于文件名） |
| `BusinessLicenseDirection` | 数字 | 否 | 营业执照方向：`1`=横版范围、`2`=横版提示、`3`=竖版范围、`4`=竖版提示；不传则自动检测（OCR 判定）（ES） |

**文件字段：**

| 字段 | 类型 | 必填 | 说明 |
| ---- | ---- | ---- | ---- |
| `BusinessLicensePic` | 文件 | 是 | 营业执照原件（大陆）；BR 文件（商业登记证，香港） |
| `LegalPersonIdNumberFrontPic` | 文件 | 是 | 证件正面照 |
| `LegalPersonIdNumberBackPic` | 文件 | 是 | 证件反面照 |
| `LegalSignedFile` | 文件 | 免海牙是；030 是 | 法人签名文件（`ES_EPR_REGISTER_030_FILE` 必填，海牙流程非必填） |
| `CreditReportPic` | 文件 | 大陆是/香港否 | 企业信用报告（ES） |
| `BusinessCRFile` | 文件 | 香港是 | CR 文件（注册证书）（ES） |
| `BRFooterPic` | 文件 | 香港是 | BR 脚码（ES） |
| `CRSignerPic` | 文件 | 香港是 | CR 签发人（ES） |
| `CompanyParticularsPic` | 文件 | 香港且 `HagueType=1/2` | 查册文件（ES） |
| `StoreFBAAcitveSetSetScreenShot` | 文件 | 否 | FBA 开启截图（DE） |
| `StoreWarehouseAddressScreenShot` | 文件 | 否 | 仓库地址截图（DE） |
| `StoreOtherSetScreenShot` | 文件 | 否 | 店铺其他截图（DE） |
| `StoreOverseaWarehouseContract` | 文件 | 否 | 海外仓合同（DE） |
| `StoreSellerProfileScreenShot` | 文件 | 否 | 店铺主页截图（DE） |

> **字段取值规则**（ES 海牙）：
> - `LegalPersonCountry` / `CompanyCountry`（及兼容字段 `Country`）只传**国家二字码**（如 `CN`/`HK`）；中文名（`name_cn`）、英文名（`name_en`）、区域代码（`CountryCode`）由系统从国家字典解析，**找不到对应国家、或记录缺少区域代码，均报数据错误**；`LegalPersonCountry_en` / `CompanyCountry_en` / `CompanyCountryCode` 不再由调用方传值
> - 法人英文名拆分字段：`LegalPersonNamePinyin`（名）+ `LegalPersonSurnamePinyin`（姓）必填，系统按「名 姓」拼接（如 `ZHENHUA` + `LIU` → `ZHENHUA LIU`）供文档生成使用；旧字段 `LegalPersonFullNamePinYin` 已废弃，不再接受
> - `LegalPersonIDCardType` 统一规范化为 `IDCard` / `Passport`
> - `LegalPersonGender` 受理时规范化为 `H`(男) / `M`(女)，由传入值映射：`1`/`男`/`H`/`HOMBRE` → `H`；`2`/`女`/`M`/`MUJER` → `M`

**bizParam 字段说明：**

| 字段 | 类型 | 说明 |
| ---- | ---- | ---- |
| `BusinessSerialNumber` | 字符串/数字 | 通用业务流水号；是否必填及是否参与路径/防重由 PushType 决定 |
| `BusinessId` | 字符串/数字 | 通用业务 ID；是否必填由 PushType 决定 |
| `Businessld` | 字符串/数字 | `BusinessId` 的兼容旧拼写，仅对声明支持该兼容键的流程生效 |

法国最小 bizParam 契约：`FR_EPR_REGISTER_LEKO` 仅要求 `BusinessSerialNumber`，用于现有 LEKO OSS 隔离目录；`FR_EPR_REGISTER_CITEO` 无固定必填子字段。两个流程均原样回传完整 bizParam，`BusinessId`/`Businessld` 不参与当前法国文件内容、INSEE 查询或实际 OSS 目录。

> 类型说明：`文件` 类字段的值为 JSON 数组字符串，含 `fileUrl`（OSS 相对路径）+ `fileName`；`日期` 格式 `YYYY-MM-DD`；`数组` 字段以逗号连接后使用。

### 4.4.1 德国VAT注册文件生成完整请求实例（DE_VAT_REGISTER_FILE，Country=DE）

**请求体即 `德国vat注册文件.json` 全文**（顶层含 `PushType` / `Country` / `Data`；`bizParam` 可选），`Data` 为扁平业务字段（键=业务字段名，含公司 / 法人 / 店铺 / 业务字段）。注册受理版（`DE_VAT_REGISTER`，Data 同构 + `files` 五合一文件）见 [4.4.10](#4410-德国vat注册自动受理完整请求实例de_vat_registercountryde)。

```json
{
    "PushType": "DE_VAT_REGISTER_FILE",
    "Country": "DE",
    "Data":  {
        "LegalPersonSurnamePinyin": "LIU",
        "LegalPersonIdNumberBackPic": [
            {
                "fileUrl": "common-test/2026/08/27/4c58e975-91fe-4e59-abb4-45647d4844b2.jpg",
                "fileName": "DownAnnexesFileByFileUrl (2).jpg"
            }
        ],
        "LegalPersonIdStartDate": "2019-04-15",
        "LegalPersonCountry": "CN",
        "LegalPersonNamePinyin": "ZHENHUA",
        "LegalPersonIdEndDate": "2039-04-15",
        "Nationality": "HAN",
        "LegalPersonPhone": "+86 13422222222",
        "LegalPersonAddressPostcode": "666666",
        "LegalPersonAddressLine1En": "No. 43, Group 4, Defense Village",
        "LegalPersonBirthDate": "1987-06-25",
        "LegalSignedFile": "[{\"fileUrl\":\"common-test/2026/08/27/dae4aeda-6c5e-4cd3-adde-8bd614317db8.png\",\"fileName\":\"签名.png\"}]",
        "LegalPersonIdNumber": "510681198706252865",
        "LegalPersonAddressProvinceEn": "Sichuan ",
        "LegalPersonGender": "1",
        "LegalPersonCityEngName": "Guanghan",
        "LegalPersonName": "刘振华",
        "LegalPersonIDCardAddress": "四川省广汉市和兴镇国防村4组43号",
        "LegalPersonIDCardAddressEng": "No. 43, Group 4, Defense Village, Huixing Town, Guanghan City, Sichuan Province",
        "LegalPersonIDCardType": "IDCARD",
        "LegalPersonIdNumberFrontPic": [
            {
                "fileUrl": "common-test/2026/08/27/22696aa2-e931-4dc5-a2cd-510db0d2d16d.jpg",
                "fileName": "DownAnnexesFileByFileUrl (1).jpg"
            }
        ],
        "__extraFile": "[{\"fileUrl\":\"common-test/2026/08/27/08a58ddd-32b9-4849-a39e-0a1ed7bbaa94.png\",\"fileName\":\"e62ec40c4ccb456fbc911cfac02b54fb.png\"}]",
        "LocalTaxNumber": null,
        "Code": null,
        "VATTaxNumber": null,
        "ExpectedSalesYear2": "3124",
        "ExpectedSalesYear1": "1234",
        "__attachments": "[{\"fileUrl\":\"common-test/2026/08/27/8d3528c7-7516-4fc8-9b04-44b560e4191d.png\",\"fileName\":\"logo.png\"}]",
        "DELogisticsSituation": "No. 43, Group 4, Defense Village, Huixing Town, Guanghan City, Sichuan Province",
        "ProductsRange": "Product sales type",
        "BusinessPlatform_En": "TIKTOK",
        "StoreFBAAcitveSetSetScreenShot": "[{\"fileUrl\":\"common-test/2026/08/27/d3286939-8f8e-4789-9463-39721682d3d8.gif\",\"fileName\":\"1.gif\"}]",
        "ShopName": "name of shop",
        "ShopUrl": "https://test-cloud.usaeu.com/order/handle-business?data=FkcACwYPSDRBRFYZRFU-XkcXWBgRFkBXQntST19cW0ZQ",
        "ShopAccount": "123456789",
        "StoreWarehouseAddressScreenShot": "[{\"fileUrl\":\"common-test/2026/08/27/9eb2dca4-6113-466a-815d-149931dc6782.gif\",\"fileName\":\"2.gif\"}]",
        "StoreOtherSetScreenShot": "[{\"fileUrl\":\"common-test/2026/08/27/651fee18-b721-4897-83a6-18927c63d392.png\",\"fileName\":\"avatar200.png\"}]",
        "StoreOverseaWarehouseContract": [
            {
                "fileUrl": "common-test/2026/08/27/af88148a-1484-483f-8cda-c4db8ee0c6d7.png",
                "fileName": "4359bc31121b45fd974bf91f0e1dff1b.png"
            }
        ],
        "CreditReportPic": null,
        "EstablishmentDate": "2024-03-22",
        "RegisteredCapital": "10000",
        "NameCN": "枝江市霞陆逊商贸有限公司",
        "NameEng": "Ji Jiang City Xialu Sun Trading Co., Ltd.",
        "RegAddressEng": "No. 82, 2nd floor, Group 6, Jiangjiaopo Village, Anfushi Town, Zhijiang City, Yichang City, Hubei Province (Self-reported)",
        "CityEngName": "Zhijiang",
        "RegNumber": "91420583MADDMTJE7M",
        "CompanyAddressPostcode": "666666",
        "RegisteredCapitalCurrency": "CNY",
        "CompanyAddressLine1En": "No. 82, 2nd floor, Group 6, Jiangjiaopo Village, Anfushi Town, Zhijiang City, Yichang City, Hubei Province (Self-reported)",
        "Country": "CN",
        "BusinessLicensePic": [
            {
                "fileUrl": "common-test/2026/08/27/9abb02ef-4c2d-4c39-baa0-6f5b65d99bf4.jpg",
                "fileName": "DownAnnexesFileByFileUrl.jpg"
            }
        ]
    }
}
```

### 4.4.2 西班牙VAT海牙完整请求实例（Country=ES）

**请求体即 `西班牙VAT海牙.json` 全文**（顶层含 `PushType` / `Country` / `Data` / `bizParam`）：

```json
{
    "PushType": "ES_VAT_REGISTER_HAGUE_FILE",
    "Country": "ES",
    "Data": {
        "LegalPersonIdNumberBackPic": "[{\"fileUrl\":\"common-test/2026/08/06/ad9ba397-3a41-443c-8c96-d567f9f567c3.jpg\",\"fileName\":\"DownAnnexesFileByFileUrl (2).jpg\"}]",
        "LegalPersonIdStartDate": "2019-04-15",
        "LegalPersonIdEndDate": "2039-04-15",
        "Nationality": "1",
        "LegalPersonNamePinyin": "ZHENHUA",
        "LegalPersonSurnamePinyin": "LIU",
        "LegalPersonPhone": "8618117939375",
        "LegalPersonBirthDate": "1987-06-25",
        "LegalSignedFile": "[{\"fileUrl\":\"common-test/2026/08/06/60198b6f-122a-4c74-ae64-07502628b828.png\",\"fileName\":\"DownAnnexesFileByFileUrl.png\"}]",
        "LegalPersonIdNumber": "510681198706252865",
        "LegalPersonEmail": "liu5zhen7h7ua@outlook.com",
        "LegalPersonGender": "1",
        "LegalPersonName": "刘振华",
        "LegalPersonIDCardAddress": "四川省广汉市和兴镇国防村4组43号",
        "LegalPersonIDCardAddressEng": "hexing zhen guofang cun 4 zu 43 hao hexing zhen,guanghan shi,sichuan sheng,618300,CN",
        "LegalPersonIdNumberFrontPic": "[{\"fileUrl\":\"common-test/2026/08/06/d257b28a-ea62-4197-b912-dffed75617af.jpg\",\"fileName\":\"DownAnnexesFileByFileUrl (1).jpg\"}]",
        "LocalTaxNumber": "本土税号",
        "ExpectedSalesYear2": "20000.00",
        "ExpectedSalesYear1": "10000.00",
        "DELogisticsSituation": "Calle de Alcalá 21, 28014 Madrid, Comunidad de Madrid",
        "ProductsRange": "Home goods",
        "BusinessPlatform_En": "1",
        "StoreFBAAcitveSetSetScreenShot": "[{\"fileUrl\":\"common-test/2026/08/07/8388e6e0-87fd-4bd0-b881-392fbd7d6bb2.png\",\"fileName\":\"4359bc31121b45fd974bf91f0e1dff1b.png\"}]",
        "ShopName": "Kyntysc",
        "ShopUrl": "https://www.amazon.es/sp?ie=UTF8&seller=A1DGLUTXACSUO",
        "ShopAccount": "A1DGLUTXACSUO",
        "StoreWarehouseAddressScreenShot": "[{\"fileUrl\":\"common-test/2026/08/07/26bd44df-e802-431c-af44-62ebd6e76c20.png\",\"fileName\":\"e62ec40c4ccb456fbc911cfac02b54fb.png\"}]",
        "StoreOtherSetScreenShot": "[{\"fileUrl\":\"common-test/2026/08/07/1c1345cb-c588-491a-8f28-17968c49e3e0.png\",\"fileName\":\"logo.png\"}]",
        "CompanyAddressLine1En": "No. W82, 2nd floor, Group 6, Jiangjiaopo Village, Anfu Temple, Zhijiang City, Yichang City, Hubei Province",
        "EstablishmentDate": "2024-03-22",
        "RegisteredCapital": "100000.00",
        "CityEngName": "Zhi Jiang",
        "NameEng": "zhijiangshixialuxunshangmaoyouxiangongsi",
        "NameCN": "枝江市霞陆逊商贸有限公司",
        "RegNumber": "91420583MADDMTJE7M",
        "CompanyAddressPostcode": "443200",
        "RegisteredCapitalCurrency": [
            "1",
            "2"
        ],
        "Country": "CN",
        "CompanyCountry": "CN",
        "BusinessLicensePic": "[{\"fileUrl\":\"common-test/2026/08/06/019baf3f-801e-45aa-bf6d-a80c2b07e15d.jpg\",\"fileName\":\"DownAnnexesFileByFileUrl.jpg\"}]",
        "AR": "M",
        "SpecsName": "海牙",
        "RegAddressEng": "No. W82, 2nd floor, Group 6, Jiangjiaopo Village, Anfu Temple, Zhijiang City, Yichang City, Hubei Province",
        "CompanyAddressLine2En": "",
        "CompanyAddressProvinceEn": "Hubei",
        "LegalPersonCityEngName": "Guang Han",
        "LegalPersonIDCardType": "1",
        "LegalPersonCountry": "CN",
        "LegalPersonAddressProvinceEn": "Sichuan",
        "BusinessCode": "",
        "Code": "",
        "CreditReportPic": "[{\"fileUrl\":\"common-test/2026/08/07/credit_report.pdf\",\"fileName\":\"credit_report.pdf\"}]",
        "HagueType": 3,
        "BusinessCRFile": "[{\"fileUrl\":\"common-test/2026/08/07/cr.pdf\",\"fileName\":\"cr.pdf\"}]",
        "BRFooterPic": "[{\"fileUrl\":\"common-test/2026/08/07/br_footer.png\",\"fileName\":\"br_footer.png\"}]",
        "CRSignerPic": "[{\"fileUrl\":\"common-test/2026/08/07/cr_signer.png\",\"fileName\":\"cr_signer.png\"}]",
        "CompanyParticularsPic": "[{\"fileUrl\":\"common-test/2026/08/07/particulars.pdf\",\"fileName\":\"particulars.pdf\"}]"
    },
    "bizParam": {
        "BusinessSerialNumber": "EVAT12312312312312313",
        "Businessld": 789012
    }
}
```

> 注：示例含少量德国流程遗留字段（店铺 / 销售 / 海外仓截图类），ES 海牙受理时忽略，可删除。

### 4.4.3 西班牙EPR海牙完整请求实例（ES_EPR_REGISTER_HAGUE_FILE）

**请求体即 `西班牙EPR海牙.json` 全文**（顶层含 `PushType` / `Country` / `Data` / `bizParam`）：

```json
{
    "PushType": "ES_EPR_REGISTER_HAGUE_FILE",
    "Country": "ES",
    "Data": {
        "LegalPersonIdNumberBackPic": "[{\"fileUrl\":\"common-test/2026/08/06/ad9ba397-3a41-443c-8c96-d567f9f567c3.jpg\",\"fileName\":\"DownAnnexesFileByFileUrl (2).jpg\"}]",
        "LegalPersonIdStartDate": "2019-04-15",
        "LegalPersonIdEndDate": "2039-04-15",
        "Nationality": "1",
        "LegalPersonNamePinyin": "ZHENHUA",
        "LegalPersonSurnamePinyin": "LIU",
        "LegalPersonPhone": "8618117939375",
        "LegalPersonBirthDate": "1987-06-25",
        "LegalSignedFile": "[{\"fileUrl\":\"common-test/2026/08/06/60198b6f-122a-4c74-ae64-07502628b828.png\",\"fileName\":\"DownAnnexesFileByFileUrl.png\"}]",
        "LegalPersonIdNumber": "510681198706252865",
        "LegalPersonEmail": "liu5zhen7h7ua@outlook.com",
        "LegalPersonGender": "1",
        "LegalPersonName": "刘振华",
        "LegalPersonIDCardAddress": "四川省广汉市和兴镇国防村4组43号",
        "LegalPersonIDCardAddressEng": "hexing zhen guofang cun 4 zu 43 hao hexing zhen,guanghan shi,sichuan sheng,618300,CN",
        "LegalPersonIdNumberFrontPic": "[{\"fileUrl\":\"common-test/2026/08/06/d257b28a-ea62-4197-b912-dffed75617af.jpg\",\"fileName\":\"DownAnnexesFileByFileUrl (1).jpg\"}]",
        "LocalTaxNumber": "本土税号",
        "ExpectedSalesYear2": "20000.00",
        "ExpectedSalesYear1": "10000.00",
        "DELogisticsSituation": "Calle de Alcalá 21, 28014 Madrid, Comunidad de Madrid",
        "ProductsRange": "Home goods",
        "BusinessPlatform_En": "1",
        "StoreFBAAcitveSetSetScreenShot": "[{\"fileUrl\":\"common-test/2026/08/07/8388e6e0-87fd-4bd0-b881-392fbd7d6bb2.png\",\"fileName\":\"4359bc31121b45fd974bf91f0e1dff1b.png\"}]",
        "ShopName": "Kyntysc",
        "ShopUrl": "https://www.amazon.es/sp?ie=UTF8&seller=A1DGLUTXACSUO",
        "ShopAccount": "A1DGLUTXACSUO",
        "StoreWarehouseAddressScreenShot": "[{\"fileUrl\":\"common-test/2026/08/07/26bd44df-e802-431c-af44-62ebd6e76c20.png\",\"fileName\":\"e62ec40c4ccb456fbc911cfac02b54fb.png\"}]",
        "StoreOtherSetScreenShot": "[{\"fileUrl\":\"common-test/2026/08/07/1c1345cb-c588-491a-8f28-17968c49e3e0.png\",\"fileName\":\"logo.png\"}]",
        "CompanyAddressLine1En": "No. W82, 2nd floor, Group 6, Jiangjiaopo Village, Anfu Temple, Zhijiang City, Yichang City, Hubei Province",
        "EstablishmentDate": "2024-03-22",
        "RegisteredCapital": "100000.00",
        "CityEngName": "Zhi Jiang",
        "NameEng": "zhijiangshixialuxunshangmaoyouxiangongsi",
        "NameCN": "枝江市霞陆逊商贸有限公司",
        "RegNumber": "91420583MADDMTJE7M",
        "CompanyAddressPostcode": "443200",
        "RegisteredCapitalCurrency": [
            "1",
            "2"
        ],
        "Country": "CN",
        "CompanyCountry": "CN",
        "BusinessLicensePic": "[{\"fileUrl\":\"common-test/2026/08/06/019baf3f-801e-45aa-bf6d-a80c2b07e15d.jpg\",\"fileName\":\"DownAnnexesFileByFileUrl.jpg\"}]",
        "AR": "M",
        "SpecsName": "海牙",
        "RegAddressEng": "No. W82, 2nd floor, Group 6, Jiangjiaopo Village, Anfu Temple, Zhijiang City, Yichang City, Hubei Province",
        "CompanyAddressLine2En": "",
        "CompanyAddressProvinceEn": "Hubei",
        "LegalPersonCityEngName": "Guang Han",
        "LegalPersonIDCardType": "1",
        "LegalPersonCountry": "CN",
        "LegalPersonAddressProvinceEn": "Sichuan",
        "BusinessCode": "",
        "Code": "",
        "CreditReportPic": "[{\"fileUrl\":\"common-test/2026/08/07/credit_report.pdf\",\"fileName\":\"credit_report.pdf\"}]",
        "HagueType": 3,
        "BusinessCRFile": "[{\"fileUrl\":\"common-test/2026/08/07/cr.pdf\",\"fileName\":\"cr.pdf\"}]",
        "BRFooterPic": "[{\"fileUrl\":\"common-test/2026/08/07/br_footer.png\",\"fileName\":\"br_footer.png\"}]",
        "CRSignerPic": "[{\"fileUrl\":\"common-test/2026/08/07/cr_signer.png\",\"fileName\":\"cr_signer.png\"}]",
        "CompanyParticularsPic": "[{\"fileUrl\":\"common-test/2026/08/07/particulars.pdf\",\"fileName\":\"particulars.pdf\"}]"
    },
    "bizParam": {
        "BusinessSerialNumber": "EVAT12312312312312313",
        "BusinessId": 789012
    }
}
```

> 异步受理：受理即返回 `{code:200, msg:'success', ProcessMode:'async', data:null, bizParam}`，文件由后台生成，完成后经统一结果回调接口通知调用方（见 §7）。
>
> - 必填：§4.4 总表标注「是」的全量业务字段（国家字段只传二字码，`*_en`/`CompanyCountryCode` 由系统从国家字典解析，不再由调用方传值）+ `AR`（`M`/`O`）+ `SpecsName`；`LegalSignedFile` 海牙流程非必填
> - 大陆公司（`CompanyCountry` 非香港）：另需 `RegNumber`/`BusinessLicensePic`/`CreditReportPic`
> - 香港公司（`CompanyCountry` 含 `香港`/`HK`/`HONG KONG`）：另需 `HagueType`（`1`=包装法、`2`=包装法+VAT、`3`=VAT；`1`/`2` 另需 `CompanyParticularsPic` 查册文件），文件用 `BusinessLicensePic`（BR 商业登记证）/`BusinessCRFile`/`BRFooterPic`/`CRSignerPic`，无需信用报告；无 `RegNumber` 豁免
> - 防重：同 BusinessSerialNumber / BusinessId+同 PushType 存在未终态任务则 400 拒绝

### 4.4.4 西班牙EPR030完整请求实例（ES_EPR_REGISTER_030_FILE，030 文件生成）

**请求体即 `西班牙EPR030.json` 全文**（顶层含 `PushType` / `Country` / `Data` / `bizParam`，`Data` 与 §4.4.3 海牙示例完全一致，仅 `PushType` 不同）：

```json
{
    "PushType": "ES_EPR_REGISTER_030_FILE",
    "Country": "ES",
    "Data": {
        "LegalPersonIdNumberBackPic": "[{\"fileUrl\":\"common-test/2026/08/06/ad9ba397-3a41-443c-8c96-d567f9f567c3.jpg\",\"fileName\":\"DownAnnexesFileByFileUrl (2).jpg\"}]",
        "LegalPersonIdStartDate": "2019-04-15",
        "LegalPersonIdEndDate": "2039-04-15",
        "Nationality": "1",
        "LegalPersonNamePinyin": "ZHENHUA",
        "LegalPersonSurnamePinyin": "LIU",
        "LegalPersonPhone": "8618117939375",
        "LegalPersonBirthDate": "1987-06-25",
        "LegalSignedFile": "[{\"fileUrl\":\"common-test/2026/08/06/60198b6f-122a-4c74-ae64-07502628b828.png\",\"fileName\":\"DownAnnexesFileByFileUrl.png\"}]",
        "LegalPersonIdNumber": "510681198706252865",
        "LegalPersonEmail": "liu5zhen7h7ua@outlook.com",
        "LegalPersonGender": "1",
        "LegalPersonName": "刘振华",
        "LegalPersonIDCardAddress": "四川省广汉市和兴镇国防村4组43号",
        "LegalPersonIDCardAddressEng": "hexing zhen guofang cun 4 zu 43 hao hexing zhen,guanghan shi,sichuan sheng,618300,CN",
        "LegalPersonIdNumberFrontPic": "[{\"fileUrl\":\"common-test/2026/08/06/d257b28a-ea62-4197-b912-dffed75617af.jpg\",\"fileName\":\"DownAnnexesFileByFileUrl (1).jpg\"}]",
        "LocalTaxNumber": "本土税号",
        "ExpectedSalesYear2": "20000.00",
        "ExpectedSalesYear1": "10000.00",
        "DELogisticsSituation": "Calle de Alcalá 21, 28014 Madrid, Comunidad de Madrid",
        "ProductsRange": "Home goods",
        "BusinessPlatform_En": "1",
        "StoreFBAAcitveSetSetScreenShot": "[{\"fileUrl\":\"common-test/2026/08/07/8388e6e0-87fd-4bd0-b881-392fbd7d6bb2.png\",\"fileName\":\"4359bc31121b45fd974bf91f0e1dff1b.png\"}]",
        "ShopName": "Kyntysc",
        "ShopUrl": "https://www.amazon.es/sp?ie=UTF8&seller=A1DGLUTXACSUO",
        "ShopAccount": "A1DGLUTXACSUO",
        "StoreWarehouseAddressScreenShot": "[{\"fileUrl\":\"common-test/2026/08/07/26bd44df-e802-431c-af44-62ebd6e76c20.png\",\"fileName\":\"e62ec40c4ccb456fbc911cfac02b54fb.png\"}]",
        "StoreOtherSetScreenShot": "[{\"fileUrl\":\"common-test/2026/08/07/1c1345cb-c588-491a-8f28-17968c49e3e0.png\",\"fileName\":\"logo.png\"}]",
        "CompanyAddressLine1En": "No. W82, 2nd floor, Group 6, Jiangjiaopo Village, Anfu Temple, Zhijiang City, Yichang City, Hubei Province",
        "EstablishmentDate": "2024-03-22",
        "RegisteredCapital": "100000.00",
        "CityEngName": "Zhi Jiang",
        "NameEng": "zhijiangshixialuxunshangmaoyouxiangongsi",
        "NameCN": "枝江市霞陆逊商贸有限公司",
        "RegNumber": "91420583MADDMTJE7M",
        "CompanyAddressPostcode": "443200",
        "RegisteredCapitalCurrency": [
            "1",
            "2"
        ],
        "Country": "CN",
        "CompanyCountry": "CN",
        "BusinessLicensePic": "[{\"fileUrl\":\"common-test/2026/08/06/019baf3f-801e-45aa-bf6d-a80c2b07e15d.jpg\",\"fileName\":\"DownAnnexesFileByFileUrl.jpg\"}]",
        "AR": "M",
        "SpecsName": "海牙",
        "RegAddressEng": "No. W82, 2nd floor, Group 6, Jiangjiaopo Village, Anfu Temple, Zhijiang City, Yichang City, Hubei Province",
        "CompanyAddressLine2En": "",
        "CompanyAddressProvinceEn": "Hubei",
        "LegalPersonCityEngName": "Guang Han",
        "LegalPersonIDCardType": "1",
        "LegalPersonCountry": "CN",
        "LegalPersonAddressProvinceEn": "Sichuan",
        "BusinessCode": "",
        "Code": "",
        "CreditReportPic": "[{\"fileUrl\":\"common-test/2026/08/07/credit_report.pdf\",\"fileName\":\"credit_report.pdf\"}]",
        "HagueType": 3,
        "BusinessCRFile": "[{\"fileUrl\":\"common-test/2026/08/07/cr.pdf\",\"fileName\":\"cr.pdf\"}]",
        "BRFooterPic": "[{\"fileUrl\":\"common-test/2026/08/07/br_footer.png\",\"fileName\":\"br_footer.png\"}]",
        "CRSignerPic": "[{\"fileUrl\":\"common-test/2026/08/07/cr_signer.png\",\"fileName\":\"cr_signer.png\"}]",
        "CompanyParticularsPic": "[{\"fileUrl\":\"common-test/2026/08/07/particulars.pdf\",\"fileName\":\"particulars.pdf\"}]"
    },
    "bizParam": {
        "BusinessSerialNumber": "EVAT12312312312312313",
        "BusinessId": 789012
    }
}
```

> 异步受理：受理即返回 async 信封，文件由后台生成后经统一结果回调接口通知调用方（见 §7）。`Data` 字段集与海牙流程（§4.4.3）完全相同（§4.4 总表「是」，国家字段只传二字码），**文件字段仅 `LegalSignedFile` 必填且不做文件检查**（`SpecsName`/`HagueType` 及其余文件字段传了也不校验）；**`AR` 必填（M/O）**——030 文件也按授权机构选模板（M=原 mokj 模板，O=Onesea 模板，与海牙授权书一致）。

### 4.4.5 法国VAT注册文件生成完整请求实例（FR_VAT_REGISTER_FILE，Country=FR）

法国VAT注册文件生成（`FR_VAT_REGISTER_FILE`）生成5个独立文件，支持中国/香港公司，根据公司是否为欧盟成员/英国/北爱选择不同模板（KJ中文模板/MOKJ法文模板）。

**请求体即 `法国vat注册文件.json` 全文**（顶层含 `PushType` / `Country` / `Data` / `bizParam`，`files` 传空数组即可，文件生成接口不使用）。注册受理版（`FR_VAT_REGISTER`，Data 同构 + `files` 5类自动生成 PDF）见 [4.4.11](#4411-法国vat注册自动受理完整请求实例fr_vat_registercountryfr)。

**生成文件（5个）：**

| 文件序号 | 字段名 | 文件类型 | 说明 |
| -------- | ------ | -------- | ---- |
| 1 | Mandat | 授权书 | 授权书翻译模板（非欧盟用KJ中文模板，欧盟/英国/北爱用MOKJ法文模板） |
| 2 | Status_FR | 章程翻译件 | 章程法语翻译模板 |
| 3 | ID | 身份证合并件 | 法人身份证正反面合并+压缩 |
| 4 | Gewerbeschein | 营业执照或BR文件 | 营业执照（大陆）/ BR+CR+NNC1合并（香港，NNC1可选） |
| 5 | Status | 公司章程原件文件 | 本国章程原件（必须为PDF格式，自动压缩） |

**必填字段说明：**

| 字段 | 类型 | 必填 | 说明 |
| ---- | ---- | ---- | ---- |
| `NameEng` | 字符串 | 是 | 企业英文全称（不能含中文） |
| `CompanyAddressLine1En` | 字符串 | 是 | 公司注册地址英文（不能含中文） |
| `CityEngName` | 字符串 | 是 | 公司所在城市英文（不能含中文） |
| `LegalPersonNamePinyin` | 字符串 | 是 | 法人英文名（拼音，不能含中文） |
| `LegalPersonSurnamePinyin` | 字符串 | 是 | 法人英文姓（拼音，不能含中文） |
| `LegalPersonBirthDate` | 日期 | 是 | 法人出生日期（YYYY-MM-DD） |
| `LegalPersonCityEngName` | 字符串 | 是 | 法人所在城市英文（不能含中文） |
| `LegalPersonCountry` | 字符串 | 是 | 法人国籍（英文，不能含中文） |
| `LegalPersonAddressLine1En` | 字符串 | 是 | 法人地址英文（不能含中文） |
| `LegalPersonEmail` | 字符串 | 是 | 法人邮箱（不允许下划线） |
| `TaxEffectiveDate` | 日期 | 是 | 税务生效日期（YYYY-MM-DD） |
| `FirstPendingSaveBusinessTime` | 日期 | 是 | 首次保存业务时间 |
| `LegalPersonPhone` | 字符串 | 是 | 法人联系电话 |
| `RegisteredCapital` | 字符串 | 是 | 注册资本 |
| `EstablishmentDate` | 日期 | 是 | 公司成立日期 |
| `ProductRange` | 字符串 | 是 | 产品说明（英文） |
| `BusinessConstitutionFile` | 文件 | 是 | 本国章程（必须为PDF格式） |
| `BusinessLicensePic` | 文件 | 是 | 营业执照照片（大陆）；BR商业登记证（香港） |
| `LegalPersonIdNumberFrontPic` | 文件 | 是 | 法人身份证正面 |
| `LegalPersonIdNumberBackPic` | 文件 | 是 | 法人身份证反面 |
| `LegalSignedFile` | 文件 | 否 | 法人签名文件（不提供则自动生成） |
| `BusinessCRFile` | 文件 | 香港是 | CR文件（公司注册证书，香港公司必填） |
| `BusinessNNC1File` | 文件 | 否 | NNC1文件（法团成立表格，香港公司可选） |
| `IsEUMember` | 数字 | 否 | 是否欧盟成员（1=是，0=否），决定模板选择 |
| `CountryTwoCode` | 字符串 | 否 | 国家二字码（GB=英国，NI=北爱），决定模板选择 |

**请求体即 `法国vat注册文件.json` 全文**：

```json
{
	"PushType": "FR_VAT_REGISTER_FILE",
	"Country": "FR",
	"Data": {
		"LegalPersonSurnamePinyin": "Zhu",
		"LegalPersonIdNumberBackPic": [{
			"fileUrl": "common-test/2026/08/23/b87d393f-589c-452f-bf35-47bdfa058906.jpg",
			"fileName": "身份证反面-1.jpg"
		}],
		"LegalPersonIdStartDate": "2019-08-05",
		"LegalPersonCountry": "CN",
		"LegalPersonNamePinyin": "Menglong",
		"LegalPersonIdEndDate": "2039-08-05",
		"Nationality": "汉",
		"LegalPersonPhone": "+86 17304425200",
		"LegalPersonBirthDate": "1988-09-19",
		"LegalSignedFile": null,
		"LegalPersonIdNumber": "420281198809193219",
		"LegalPersonEmail": "MenlongDLtHk@outlook.com",
		"LegalPersonGender": "男",
		"LegalPersonName": "朱梦龙",
		"LegalPersonIDCardAddress": "湖北省大冶市陈贵镇铜山口村张泗朱湾136号",
		"LegalPersonIDCardAddressEng": "hubeishengdayeshichenguizhentongshankoucunzhangsizhuwan136hao",
		"LegalPersonIDCardType": "IDCARD",
		"LegalPersonIdNumberFrontPic": [{
			"fileUrl": "common-test/2026/08/23/f136c0ff-d693-4f57-9837-102b121c8de7.jpg",
			"fileName": "身份证正面.jpg"
		}],
		"__extraFile": null,
		"LocalTaxNumber": "20260825",
		"Code": "0825",
		"VATTaxNumber": "FR0825",
		"TaxEffectiveDate": "2025-01-01",
		"ProductsRange": "electronic products childrens toys",
		"BusinessPlatform_En": "Amazon",
		"ShopName": "MENGLONGDA TECHNOLOGY",
		"ShopUrl": "https://www.amazon.it/sp?ie=UTF8&seller=A102OL1SHPTA29",
		"ShopAccount": "A102OL1SHPTA29",
		"BusinessConstitutionFile": "[{\"fileUrl\":\"common-test/2026/08/23/19b30cb7-6329-4e68-8c9f-d75076ecf7d2.pdf\",\"fileName\":\"Statuts dates et signes.pdf\"}]",
		"EstablishmentDate": "2025-11-24",
		"RegisteredCapital": "10000",
		"NameEng": "HONG KONG MENGLONGDA TECHNOLOGY CO., LIMITED",
		"RegAddressEng": "33-35 Au Pui Wan Street, Century Industrial Centre Room D4, Flat I, 4/F,Sha Tin Hong Kong 999077 HK",
		"CityEngName": "Century Industrial Centre",
		"RegNumber": "79244348",
		"CompanyAddressPostcode": "999077",
		"RegisteredCapitalCurrency": "CNY",
		"CompanyAddressLine1En": "33-35 Au Pui Wan Street",
		"Country": "HK",
		"BusinessLicensePic": [{
			"fileUrl": "common-test/2026/08/23/b3ea5f07-98a2-4abd-8399-bb0f163416b9.pdf",
			"fileName": "BR-香港夢灌達科技有限公司.pdf"
		}],
		"FirstPendingSaveBusinessTime": "2026-08-25"
	},
	"bizParam": {
		"deliveryId": 57827,
		"pushType": "FR_VAT_REGISTER_FILE",
		"operatorId": 93,
		"operatorTime": "2026-08-26 20:30:18",
		"BusinessSerialNumber": "FR2026082509563715",
		"BusinessId": "57827"
	},
	"files": []
}
```

> **模板选择规则**：
> - 非欧盟/非英国/非北爱公司（如中国、香港）：使用 **KJ中文模板**；欧盟成员/英国/北爱公司：使用 **MOKJ法文模板**
> - 若未上传签名文件（`LegalSignedFile`），系统将根据 `Code` 末位数字自动生成签名

### 4.4.6 意大利EPR注册完整请求实例（Country=IT）

**请求体即 `意大利EPR注册.json` 全文**（顶层含 `PushType` / `Country` / `bizParam` / `Data`）：

```json
{
    "PushType": "IT_EPR_REGISTER",
    "Country": "IT",
    "bizParam": {
        "BusinessId": 789012,
        "BusinessSerialNumber": "IT-2026-0001"
    },
    "Data": {
        "NameEng": "Test Company Ltd",
        "RegAddressEng": "No.1 Test Road, Chaoyang District",
        "CompanyAddressPostcode": "100000",
        "Country": "中国",
        "CountryEn": "China",
        "CountryTwoCode": "CN",
        "RegNumber": "91110000MA01TEST1X",
        "VATNumber": "",
        "LegalPersonFullNamePinYin": "Xiaoming WANG",
        "LegalPersonPhone": "86-13488979214",
        "LegalPersonEmail": "legal@test-company.com",
        "LegalPersonBirthDate": "1990-01-15",
        "CompanyAddressProvinceEn": "Beijing",
        "CityEngName": "Beijing",
        "LegalPersonCityEngName": "Beijing",
        "F_Mobile": "13488979214",
        "LegalSignedFile": "[{\"fileUrl\":\"https://file.usaeu.com/annexes/signature_2026.png\",\"fileName\":\"signature_2026.png\"}]"
    }
}
```

> 注：`CountryEn`（英文国家名，用于 DeepL 翻译）与 `CountryTwoCode`（国家二字码，用于 CN/HK 判定与 VAT 解析）为意大利流程**新增必填字段**，§4.4 通用总表中无此两项；`LegalSignedFile` 为 URL 或 `[{"fileUrl":...}]` JSON 数组字符串，原样透传下游。

### 4.4.7 法国 LEKO 注册完整请求实例（FR_EPR_REGISTER_LEKO）

API 流程直接使用 `Data` 生成 LEKO XLSX 与 POA PDF。对法国公司，系统调用 INSEE 官方 SIRENE API 获取法律形式、NAF/APE 和总部 SIRET；这三项不是请求字段。

```json
{
    "PushType": "FR_EPR_REGISTER_LEKO",
    "Country": "FR",
    "bizParam": {
        "BusinessSerialNumber": "FREPR2026000001"
    },
    "Data": {
        "NameEng": "EXAMPLE COMPANY SAS",
        "RegAddressEng": "10 Rue Exemple, 75001 Paris, France",
        "CompanyAddressLine1En": "10 Rue Exemple",
        "CompanyAddressPostcode": "75001",
        "CityEngName": "Paris",
        "CountryTwoCode": "FR",
        "AreaName": "Ile-de-France",
        "RegNumber": "123 456 789 R.C.S. Paris",
        "RegisteredCapital": "10000.00",
        "RegisteredCapitalCurrency": "EUR",
        "LegalPersonFullNamePinYin": "MING LI",
        "LegalPersonEmail": "legal@example-company.fr",
        "LegalPersonPhone": "8613800000000",
        "LegalPersonGender": "1",
        "VATNumber": "FR00123456789"
    }
}
```

LEKO 最小输入：固定字段为 `NameEng`、`RegAddressEng`、`CompanyAddressLine1En`、`CompanyAddressPostcode`、`CityEngName`、`CountryTwoCode`、`RegNumber`、`LegalPersonFullNamePinYin`、`LegalPersonEmail`、`LegalPersonPhone`、`LegalPersonGender`；`CountryTwoCode=CN` 时增加 `AreaName`；欧盟公司增加 `VATNumber`；`CountryTwoCode=FR` 时增加 `RegisteredCapital` 与 `RegisteredCapitalCurrency`。`CompanyAddressLine2En` 和 `InseeLegalForm`/`InseeNafCode`/`InseeSiret` 不属于请求字段。`NameEng` 最长 50 个字符，`CompanyAddressLine1En` 最长 100 个字符。

INSEE 查询规则：仅法国公司查询；从 `RegNumber` 删除非数字字符后取前 9 位作为 SIREN，只有长度恰为 9 时调用 SIRENE API；非 FR 或无法形成 9 位 SIREN 时不调用，文件沿用默认值。查询失败则文件生成失败。

成功响应为同步模式；`data.file1` 是 LEKO XLSX 完整 OSS URL，`data.file2` 是 POA PDF 完整 OSS URL，未使用的 `file3` 至 `file10` 为空字符串。

### 4.4.8 法国 CITEO 注册完整请求实例（FR_EPR_REGISTER_CITEO）

必须按下列最小字段传 `Data` 完整业务字段（不接受仅传 `Id` 或 `EprRegInfoId` 的方式）。

```json
{
    "PushType": "FR_EPR_REGISTER_CITEO",
    "Country": "FR",
    "bizParam": {},
    "Data": {
        "NameEng": "EXAMPLE COMPANY SAS",
        "CountryTwoCode": "FR",
        "CityEngName": "Paris",
        "RegAddressEng": "10 Rue Exemple, 75001 Paris, France",
        "LegalPersonFullNamePinYin": "MING LI",
        "RegNumber": "123456789"
    }
}
```

CITEO 最小输入：固定字段为 `NameEng`、`CountryTwoCode`、`CityEngName`、`RegAddressEng` 和 `LegalPersonFullNamePinYin`。欧盟公司且国家不为法国时，增加 `VATNumber` 并作为 `BusinessLicenseNo`；非欧盟公司或法国公司增加 `RegNumber`。当前生成器不需要 AreaName、地址行/邮编、资本、法人联系方式/性别或 INSEE 字段。

成功响应为同步模式；`data.file1` 是 CITEO POA PDF 完整 OSS URL，未使用的 `file2` 至 `file10` 为空字符串。

### 4.4.9 英国VAT注册完整请求实例（Country=GB）

英国 VAT 注册数据接收（`GB_VAT_REGISTER`）：接收 SaaS 推送的英国 VAT 注册业务数据，校验并转换后落库，注册邮箱由服务端自动创建（`registrationvat{N}@usaeu.com`）。

**请求体即 `英国VAT注册.json` 全文**（顶层含 `PushType` / `Country` / `bizParam` / `Data`，`Data` 为扁平业务字段）：

```json
{
    "PushType": "GB_VAT_REGISTER",
    "Country": "GB",
    "bizParam": {
        "BusinessSerialNumber": "POVAT20260824000001",
        "BusinessId": 123456
    },
    "Data": {
        "NameEng": "ZhiJiangShiXiaLuXunShangMaoYouXianGongSi",
        "VATStartDate": "2026-10-01",
        "RegNumber": "91420583MADDMTJE7M",
        "Country": "CN",
        "CompanyAddressLine1En": "No. W82, 2nd floor, Jiangjiaopo",
        "CompanyAddressLine2En": "Anfu Temple, Zhijiang City",
        "CityEngName": "Zhi Jiang",
        "CompanyAddressProvinceEn": "Hubei Province",
        "CompanyAddressPostcode": "443200",
        "LegalPersonNamePinyin": "ZHENHUA",
        "LegalPersonSurnamePinyin": "LIU",
        "LegalPersonBirthDate": "1987-06-25",
        "LegalPersonAddressLine1En": "hexing zhen guofang cun 4 zu",
        "LegalPersonAddressLine2En": "guanghan shi, sichuan sheng",
        "LegalPersonCityEngName": "Guang Han",
        "LegalPersonAddressProvinceEn": "Sichuan",
        "LegalPersonAddressPostcode": "618300",
        "LegalPersonCountry": "CN",
        "LegalPersonPhone": "8618117939375",
        "ProductsRange": "Home goods",
        "AnnualGMV": "10000",
        "NeedRequestEORI": 1,
        "BusinessCode": "GBVAT20260824000001",
        "Code": "POVAT20260824000001",
        "LinkedSalesContactName": "Sales Zhang",
        "LinkedSalesContactPhone": "13900000000",
        "UploadFile1": "[{\"fileUrl\":\"common-test/2026/08/06/ad9ba397-3a41-443c-8c96-d567f9f567c3.jpg\",\"fileName\":\"passport.jpg\"}]",
        "UploadFile2": "[{\"fileUrl\":\"common-test/2026/08/07/26bd44df-e802-431c-af44-62ebd6e76c20.pdf\",\"fileName\":\"bank statement.pdf\"}]",
        "UploadFile3": "[{\"fileUrl\":\"common-test/2026/08/07/1c1345cb-c588-491a-8f28-17968c49e3e0.pdf\",\"fileName\":\"electricity bill.pdf\"}]"
    }
}
```

> 注：`VATStartDate` 须为距当前日期 ±3 个月内的日期，示例为文档编写日期附近的有效值；文件字段为统一格式 `[{fileUrl, fileName}]`（JSON 数组字符串或原生数组，`fileUrl` 仅支持 https 或内部文件服务相对路径；**绝对 https 地址提交时做 HEAD 探测（5s 超时）确认文件真实存在**，网络错误/HTTP ≥400 报 400「文件不存在或无法访问」，内部相对路径跳过探测），**文件名按关键词分类**：`UploadFile1` 第一个附件为法人证件（文件名含 passport/identity card/drive license，护照/身份证/驾驶证）→ `upload_file_path1`，必填；`UploadFile2`/`UploadFile3` 为支持文件（文件名含 bank statement/credit card statement/electricity bill/water bill/property fee bill/telephone bill/gas bill/broadband bill/property ownership certificate/birth certificate/social security certificate 关键词），**匹配多个则多个文件一并递交**（首个 → `upload_file_path2`，次个 → `upload_file_path3`），`UploadFile3` 仅有第二个支持文件时填写、非必填；文件名未命中任何关键词报数据错误。旧字段名 `LegalPersonIdDocumentPic`/`SupportingDocumentPic1`/`SupportingDocumentPic2` 已废弃不再接受：提交视为对应上传文件字段未传，直接报 400「缺少上传文件字段（UploadFile1/UploadFile2/UploadFile3）」（与未传新字段相同）。
>
> **GB 字段取值规则**：`Country` / `LegalPersonCountry` 只传**国家二字码**（如 `CN`/`HK`），中文名/英文名不再由调用方传值，系统从国家字典解析英文名（与 sync 流程写入值一致），找不到对应国家报数据错误；法人英文名为 `LegalPersonNamePinyin`（名）+ `LegalPersonSurnamePinyin`（姓）两字段，旧字段 `LegalPersonFullNamePinYin` 已废弃，不再接受。

### 4.4.10 德国VAT注册自动受理完整请求实例（DE_VAT_REGISTER，Country=DE）

**请求体即 `德国vat注册.json` 全文**：`Data` 与文件生成版（§4.4.1）同构，另携带顶层 `files`（五合一文件生成结果，`url` 为 OSS 相对路径，**落库时直接使用，不再下载上传**）。

```json
{
    "PushType": "DE_VAT_REGISTER",
    "Country": "DE",
    "bizParam": {
        "BusinessSerialNumber": "DVAT12312312312312313",
        "BusinessId": "123456"
    },
    "Data": {
        "LegalPersonSurnamePinyin": "CHAO",
        "LegalPersonIdNumberBackPic": [{
            "fileUrl": "common-test/2026/08/23/79266a53-ef03-4077-9315-4ad40c0e8d6d.jpg",
            "fileName": "80614db5-df9c-46e3-bb79-6fa107eefc24.jpg"
        }],
        "LegalPersonIdStartDate": "2024-02-19",
        "LegalPersonCountry": "CN",
        "LegalPersonNamePinyin": "XUYANG",
        "LegalPersonIdEndDate": "2034-02-19",
        "Nationality": "HAN",
        "LegalPersonPhone": "+86 15202482253",
        "LegalPersonAddressPostcode": "6578568",
        "LegalPersonAddressLine1En": "wuhedadao110",
        "LegalPersonBirthDate": "1998-10-03",
        "LegalSignedFile": "[{\"fileUrl\":\"common-test/2026/08/23/0544d5bb-b25c-4624-b5bf-7d3377f83a7f.png\",\"fileName\":\"IMG_4803.png\"}]",
        "LegalPersonIdNumber": "610481199810032210",
        "LegalPersonAddressProvinceEn": "gungdong",
        "LegalPersonGender": "0",
        "LegalPersonCityEngName": "shenzhen",
        "LegalPersonName": "晁旭阳",
        "LegalPersonIDCardAddress": "陕西省兴平市赵村镇晁庄村5组567号",
        "LegalPersonIDCardAddressEng": "shanxishengxingpingshizhaocunzhenyaozhangcun5zu567hao",
        "LegalPersonIDCardType": "IDCARD",
        "LegalPersonIdNumberFrontPic": [{
            "fileUrl": "common-test/2026/08/23/a034654a-c6dc-4288-8286-20d6bcf331b5.jpg",
            "fileName": "967db462-5e31-435f-8427-5554f1622547.jpg"
        }],
        "LocalTaxNumber": "87698798",
        "VATTaxNumber": "DE897889",
        "ExpectedSalesYear2": "20000",
        "ExpectedSalesYear1": "10000",
        "__attachments": "",
        "DELogisticsSituation": "DTM1 - Amazon Logistik Werne GmbH Raiffeisenstrasse 7 - 59368 - Werne, Germany",
        "ProductsRange": "household",
        "BusinessPlatform_En": "Amazon",
        "StoreFBAAcitveSetSetScreenShot": "[{\"fileUrl\":\"common-test/2026/08/23/f37d6757-eda4-4788-a63a-3518bce0a324.png\",\"fileName\":\"Fulfilment by Amazon Settings.png\"}]",
        "ShopName": "TANGLIXIA",
        "ShopUrl": "https://www.amazon.co.uk/sp?ie=UTF8&seller=AS9VCVVH2NHDI",
        "ShopAccount": "AS9VCVVH2NHDI",
        "StoreWarehouseAddressScreenShot": "[{\"fileUrl\":\"common-test/2026/08/23/c4a6039b-4eb0-476b-beab-899070933bcf.png\",\"fileName\":\"SendtOAmaZOn.png\"}]",
        "StoreOtherSetScreenShot": "[{\"fileUrl\":\"common-test/2026/08/23/bdba34d3-3f26-4849-ac14-b0e0c05edbeb.png\",\"fileName\":\"店铺前台截图.png\"}]",
        "CreditReportPic": "[{\"fileUrl\":\"common-test/2026/08/23/0d16928b-0acf-456c-884c-ed84b3b47ea4.png\",\"fileName\":\"Fulfilment by Amazon Settings.png\"}]",
        "EstablishmentDate": "2026-05-12",
        "RegisteredCapital": "100000",
        "NameEng": "yantaitanglixiashangmaoyouxiangongsi",
        "NameCN": "烟台棠梨下商贸有限公司",
        "RegAddressEng": "fu shan qu, hui li zhen zhen hong da jie 19hao 3089shi , yan tai shi , shan dong , 265500, CN",
        "CityEngName": "shenzhen",
        "RegNumber": "91370611MAKDGB0TXU",
        "CompanyAddressPostcode": "265500",
        "RegisteredCapitalCurrency": "CNY",
        "CompanyAddressLine1En": "hui li zhen zhen hong da jie 19hao 3089",
        "Country": "CN",
        "BusinessLicensePic": [{
            "fileUrl": "common-test/2026/08/23/87993443-f9cb-4ad0-a48c-a856d9815e21.jpg",
            "fileName": "b6941b80-7272-4802-9dc6-54ef534fe282.jpg"
        }]
    },
    "files": [
        {
            "url": "common-test/generatefile/2026/de_declar_delay/DVAT12312312312312313_123456_alle Anhänge in einem Dokument.pdf",
            "name": "DVAT12312312312312313_123456_alle Anhänge in einem Dokument.pdf",
            "type": "N合1文件",
            "pushType": "DE_VAT_REGISTER_FILE"
        }
    ]
}
```

> 受理要点：`files` 须提供五合一文件（`type=N_IN_ONE_FILE`，兼容 `N合1文件`，无匹配取第一项）的 `url`，直接使用 OSS 相对路径；响应 `code=200` + `{order_serial_number, record_id, combined_attachment_path}` + 原样回传 `bizParam`；校验失败返回 `code=400`（错误信息分号拼接），`data=null`。

### 4.4.11 法国VAT注册自动受理完整请求实例（FR_VAT_REGISTER，Country=FR）

**请求体即 `法国vat注册.json` 全文**：`Data` 与文件生成版（§4.4.5）同构，另携带顶层 `files`（5 类自动生成 PDF，`type` 为英文枚举，与文件生成接口返回一致，缺任一报「缺少必要的自动生成PDF文件(files)」）。

```json
{
    "PushType": "FR_VAT_REGISTER",
    "Country": "FR",
    "Data": {
        "LegalPersonSurnamePinyin": "Zhu",
        "LegalPersonIdNumberBackPic": [{
            "fileUrl": "common-test/2026/08/23/b87d393f-589c-452f-bf35-47bdfa058906.jpg",
            "fileName": "身份证反面-1.jpg"
        }],
        "LegalPersonIdStartDate": "2019-08-05",
        "LegalPersonCountry": "CN",
        "LegalPersonNamePinyin": "Menglong",
        "LegalPersonIdEndDate": "2039-08-05",
        "Nationality": "汉",
        "LegalPersonPhone": "+86 17304425200",
        "LegalPersonBirthDate": "1988-09-19",
        "LegalSignedFile": null,
        "LegalPersonIdNumber": "420281198809193219",
        "LegalPersonEmail": "MenlongDLtHk@outlook.com",
        "LegalPersonGender": "男",
        "LegalPersonName": "朱梦龙",
        "LegalPersonIDCardAddress": "湖北省大冶市陈贵镇铜山口村张泗朱湾136号",
        "LegalPersonIDCardAddressEng": "hubeishengdayeshichenguizhentongshankoucunzhangsizhuwan136hao",
        "LegalPersonIDCardType": "IDCARD",
        "LegalPersonIdNumberFrontPic": [{
            "fileUrl": "common-test/2026/08/23/f136c0ff-d693-4f57-9837-102b121c8de7.jpg",
            "fileName": "身份证正面.jpg"
        }],
        "__extraFile": null,
        "LocalTaxNumber": "20260825",
        "Code": "0825",
        "VATTaxNumber": "FR0825",
        "TaxEffectiveDate": "2025-01-01",
        "ProductsRange": "electronic products childrens toys",
        "BusinessPlatform_En": "Amazon",
        "ShopName": "MENGLONGDA TECHNOLOGY",
        "ShopUrl": "https://www.amazon.it/sp?ie=UTF8&seller=A102OL1SHPTA29",
        "ShopAccount": "A102OL1SHPTA29",
        "BusinessConstitutionFile": "[{\"fileUrl\":\"common-test/2026/08/23/19b30cb7-6329-4e68-8c9f-d75076ecf7d2.pdf\",\"fileName\":\"Statuts dates et signes.pdf\"}]",
        "EstablishmentDate": "2025-11-24",
        "RegisteredCapital": "10000",
        "NameEng": "HONG KONG MENGLONGDA TECHNOLOGY CO., LIMITED",
        "RegAddressEng": "33-35 Au Pui Wan Street, Century Industrial Centre Room D4, Flat I, 4/F,Sha Tin Hong Kong 999077 HK",
        "CityEngName": "Century Industrial Centre",
        "RegNumber": "79244348",
        "CompanyAddressPostcode": "999077",
        "RegisteredCapitalCurrency": "CNY",
        "CompanyAddressLine1En": "33-35 Au Pui Wan Street",
        "Country": "HK",
        "BusinessLicensePic": [{
            "fileUrl": "common-test/2026/08/23/b3ea5f07-98a2-4abd-8399-bb0f163416b9.pdf",
            "fileName": "BR-香港夢灌達科技有限公司.pdf"
        }],
        "FirstPendingSaveBusinessTime": "2026-08-25"
    },
    "files": [
        {
            "url": "common-test/generatefile/2026/fr_declar/Mandat-HONG KONG MENGLONGDA TECHNOLOGY CO., LIMITED.pdf",
            "name": "Mandat-HONG KONG MENGLONGDA TECHNOLOGY CO., LIMITED.pdf",
            "type": "AUTHORIZATION_LETTER"
        },
        {
            "url": "common-test/generatefile/2026/fr_declar/0825_FR_Status.pdf",
            "name": "0825_FR_Status.pdf",
            "type": "COMPANY_ARTICLES_ORIGINAL"
        },
        {
            "url": "common-test/generatefile/2026/fr_declar/0825_FR_ID.pdf",
            "name": "0825_FR_ID.pdf",
            "type": "ID_CARD_MERGED"
        },
        {
            "url": "common-test/generatefile/2026/fr_declar/0825_FR_Kbis.pdf",
            "name": "0825_FR_Kbis.pdf",
            "type": "BUSINESS_LICENSE_MERGED"
        },
        {
            "url": "common-test/generatefile/2026/fr_declar/0825_FR_KJ_Status_FR.pdf",
            "name": "0825_FR_KJ_Status_FR.pdf",
            "type": "ARTICLES_TRANSLATION"
        }
    ],
    "bizParam": {
        "deliveryId": 57827,
        "pushType": "FR_VAT_REGISTER_FILE",
        "operatorId": 93,
        "operatorTime": "2026-08-26 20:30:18",
        "BusinessSerialNumber": "FR2026082509563715",
        "BusinessId": "57827"
    }
}
```

> 受理要点：`files` 须提供 5 类自动生成 PDF（按 `type` 映射：`AUTHORIZATION_LETTER`→授权书、`ARTICLES_TRANSLATION`→章程翻译件、`ID_CARD_MERGED`→身份证合并件、`BUSINESS_LICENSE_MERGED`→营业执照合并件、`COMPANY_ARTICLES_ORIGINAL`→公司章程原件），缺任一报「缺少必要的自动生成PDF文件(files)」；响应 `code=200` + `{tid, record_id}`（`tid` = `Data.Code`）+ 原样回传 `bizParam`；校验失败返回 `code=400`（错误信息分号拼接），`data=null`。

### 4.4.12 意大利VAT注册自动受理完整请求实例（IT_VAT_REGISTER，AA7，Country=IT）

**请求体（接口取数模式）**：SaaS 调用方调用本接口，`Data` 携带 AA7 注册所需业务字段，`bizParam` 携带订单标识。

```json
{
    "PushType": "IT_VAT_REGISTER_AA7",
    "Country": "IT",
    "bizParam": {
        "BusinessSerialNumber": "POVAT20260421000235",
        "BusinessId": "3301",
        "VATRegInfoId": "88012"
    },
    "Data": {
        "NameCN": "米兰星光贸易有限公司",
        "NameEng": "MILAN STAR TRADING S.R.L.",
        "RegAddressEng": "Via Roma 1, 20121 Milano",
        "RegAddressProvince": "15201",
        "RegAddressCity": "152",
        "RegNumber": "12345678901",
        "Country": "中国",
        "CountryName_en": "China",
        "LegalPersonFullNamePinYin": "Xiaoming WANG",
        "LegalPersonPhone": "+86 13800000000",
        "LegalPersonEmail": "legal@test.com",
        "LegalSignedFile": "[{\"fileUrl\":\"https://file.usaeu.com/annexes/signature.png\",\"fileName\":\"signature.png\"}]"
    }
}
```

**字段校验规则：**

| 字段 | 校验规则 | 错误提示 |
| --- | --- | --- |
| `NameEng` | 必填 | 公司英文名称 不能为空 |
| `RegAddressEng` | 必填 | 公司地址 不能为空 |
| `RegNumber` | 必填 | 公司营业执照号 不能为空 |
| `Country` | 必填 | 公司注册所在国 不能为空 |
| `RegNumber` | 正则 `^[a-zA-Z0-9 ]+$` | 公司营业执照号只能包含数字、英文字母和空格 |
| `CompanyAddressProvinceEn` / `RegAddressProvince` | 二选一必填；用 `RegAddressProvince` 时必须为数字（区域 ID） | 公司注册所在省份 不能为空 / 异常 |
| `CityEngName` / `RegAddressCity` | 二选一必填；用 `RegAddressCity` 时必须为数字 | 公司所在城市 不能为空 / 异常 |

> 受理要点：校验失败返回 `code=400` + 分号拼接错误；成功返回 `code=200` + `{tid, record_id}`（`tid` = `bizParam.BusinessSerialNumber`）+ 原样回传 `bizParam`。幂等：按 `tid` 查重，已存在且已成功直接跳过，存在则更新，不存在则插入。`Country='香港'` 时省/市强制为 `HONGKONG`，可缺省 `CompanyAddressProvinceEn`/`CityEngName`。

### 4.4.13 意大利VAT注册自动受理完整请求实例（IT_VAT_REGISTER_ANR3，Country=IT）

**请求体（接口取数模式）**：SaaS 调用方调用本接口，`Data` 携带 ANR3 注册基础业务字段（`ProfisCode` 等），**税号证书 PDF 通过顶层 `files` 传入**（调用方提供 OSS 路径，系统下载后 OCR 提取字段）；`bizParam` 携带订单标识。

```json
{
    "PushType": "IT_VAT_REGISTER_ANR3",
    "Country": "IT",
    "bizParam": {
        "BusinessSerialNumber": "POVAT20260210000161",
        "BusinessId": "3302",
        "VATRegInfoId": "88013"
    },
    "Data": {
        "NameCN": "米兰星光贸易有限公司",
        "ProfisCode": "ANR3-2026-0001",
        "ProvinceEngName": "Lombardy",
        "LegalPersonFullNamePinYin": "Menglong ZHU",
        "LegalPersonCityEngName": "Milan"
    },
    "files": [
        {
            "url": "https://file.usaeu.com/annexes/tax_certificate_POVAT20260210000161.pdf",
            "name": "tax_certificate_POVAT20260210000161.pdf",
            "type": "TAX_CERTIFICATE"
        }
    ]
}
```

> 受理要点：`files` 必传税号证书 PDF（`type=TAX_CERTIFICATE`），缺失报「PDF税号证书附件为空」；`Data` 仅 `ProfisCode` 必填，主体字段（公司/法人税号、名称、国家、地址、城市、法人姓名/性别等）由系统对证书 PDF 做 OCR 自动提取，提取失败报「{名称}未识别到」；成功返回 `code=200` + `{tid, record_id}` + 原样回传 `bizParam`。幂等：按 `tid` 查重，存在则更新、不存在则插入（已存在记录也会被更新，无已成功跳过逻辑，与 AA7 不同）。

---

## 5. data 文件返回规范

### 5.1 规范说明

所有涉及文件生成的 PushType，返回的 `data` 统一为**文件数组**，每个元素结构：

| 字段   | 类型   | 说明                                                         |
| ------ | ------ | ------------------------------------------------------------ |
| `url`  | string | OSS 文件相对路径（不含域名，域名由调用方拼接，完整 URL 形如 `https://usaeu-1259285998.cos.ap-guangzhou.myqcloud.com/{相对路径}`） |
| `name` | string | 上传后的完整文件名（含 tid 前缀，如 `DVAT12312312312312313_123456_xxx.pdf`） |
| `type` | string | 文件类型枚举，取值见 [5.2 文件类型枚举](#52-文件类型枚举)    |

**无文件时返回空数组 `[]`**（不是 `null`）。

示例：

```json
"data": [
  {
    "url": "common-test/generatefile/2026/de_declar_delay/DVAT12312312312312313_123456_alle Anhänge in einem Dokument.pdf",
    "name": "DVAT12312312312312313_123456_alle Anhänge in einem Dokument.pdf",
    "type": "N_IN_ONE_FILE"
  }
]
```

### 5.2 文件类型枚举

`type` 字段取值（固定枚举，勿自定义）：

| 文件类型枚举           | 说明                       |
| ---------------------- | -------------------------- |
| `VAT业务申请表`        | 增值税注册申请表           |
| `营业执照或BR文件`     | 营业执照 / BR 文件         |
| `护照或法人身份证正面` | 护照或法人身份证正面       |
| `法人身份证反面`       | 法人身份证反面             |
| `CR文件(香港公司)`     | 香港公司 CR 文件           |
| `NNC1文件(香港公司)`   | 香港公司 NNC1 文件         |
| `公司章程文件`         | 公司章程文件               |
| `法人签名`             | 法人签名                   |
| `EPR业务申请表`        | EPR 业务申请表             |
| `授权代表业务申请表`   | 授权代表业务申请表         |
| `申请准备文件`         | 申请准备文件               |
| `申请回执`             | 申请回执                   |
| `申请预览`             | 申请预览                   |
| `N合1文件`             | 多文件合并的 N 合 1 文件   |
| `海牙文件-已认证`      | 已认证的海牙文件           |
| `EORI证书`             | EORI 证书                  |
| `本土税号证书`         | 本土税号证书               |
| `VAT税号证书`          | VAT 税号证书               |
| `法人税号证书`         | 法人税号证书               |
| `亚马逊证书`           | 亚马逊证书                 |
| `注册码证书`           | 注册码证书                 |
| `其他推送文件`         | 其他推送文件               |
| `授权书`               | 授权书（Mandat）           |
| `章程翻译件`           | 章程翻译件                 |
| `身份证合并件`         | 身份证合并件               |
| `营业执照合并件`       | 营业执照合并件             |
| `公司章程原件文件`     | 公司章程原件文件           |
| `普通申报回执`         | 普通申报回执               |
| `B2B申报回执`          | B2B 申报回执               |
| `延缓申报回执`         | 延缓申报回执               |
| `延缓申报确认函`       | 延缓申报确认函             |
| `其他附件`             | 其他附件                   |
| `N_IN_ONE_FILE`        | 多文件合并的 N 合 1 文件（DE_VAT_REGISTER_FILE 返回） |
| `AUTHORIZATION_LETTER` | 授权书（Mandat；FR_VAT_REGISTER_FILE 返回） |
| `COMPANY_ARTICLES_ORIGINAL` | 公司章程原件文件（FR_VAT_REGISTER_FILE 返回） |
| `ID_CARD_MERGED`       | 身份证合并件（FR_VAT_REGISTER_FILE 返回） |
| `BUSINESS_LICENSE_MERGED` | 营业执照合并件（FR_VAT_REGISTER_FILE 返回） |
| `ARTICLES_TRANSLATION` | 章程翻译件（FR_VAT_REGISTER_FILE 返回） |
| `TAX_CERTIFICATE` | 税号证书 PDF（IT_VAT_REGISTER_ANR3 注册受理 files 输入，系统下载后 OCR 提取） |

> 德/法 VAT 注册相关接口（文件生成返回、注册受理 `files` 输入）使用**英文枚举**；历史中文枚举（`授权书`、`章程翻译件`、`身份证合并件`、`营业执照合并件`、`公司章程原件文件`、`N合1文件`）保留兼容。

### 5.3 各国映射示例

| PushType | 返回文件（type 枚举） |
| -------- | --------------------- |
| `DE_VAT_REGISTER_FILE`（德国VAT注册五合一文件生成） | 只返回 1 个文件：`N_IN_ONE_FILE`（中间处理文件不上传） |
| `FR_VAT_REGISTER_FILE`（法国VAT注册文件生成） | 返回 5 个文件：`AUTHORIZATION_LETTER`、`COMPANY_ARTICLES_ORIGINAL`、`ID_CARD_MERGED`、`BUSINESS_LICENSE_MERGED`、`ARTICLES_TRANSLATION` |

> 不同国家可根据业务需求调整实际返回的文件类型，但 `type` 必须取自 [5.2 文件类型枚举](#52-文件类型枚举)。

### 5.4 新增流程文件槽契约（ES / IT / FR）

下列文件生成转发流程，响应 `data` 为**文件槽**（file1~file10），由处理方填充；空槽为空字符串 `""`；文件槽值为**完整 OSS URL**（可直接下载）。

| PushType | file1 | file2 | file3 | file4 |
| --- | --- | --- | --- | --- |
| `ES_EPR_REGISTER_HAGUE_FILE` | 盖章要求文件（固定） | 海牙待认证文件 | APODERAMIENTO 文件 | 030文件 |
| `ES_EPR_REGISTER_030_FILE` | 030文件 | | | |
| `ES_VAT_REGISTER_HAGUE_FILE` | 海牙待认证文件 | 030文件 | | |
| `IT_EPR_REGISTER` | EPR注册文件 | | | |
| `FR_EPR_REGISTER_LEKO` | LEKO XLSX文件 | POA PDF文件 | | |
| `FR_EPR_REGISTER_CITEO` | POA PDF文件 | | | |
| `FR_EPR_REGISTER_REFASHION` | POA文件 | | | |

---

## 6. ProcessMode 处理模式

> `ProcessMode` 仅作为响应参数返回（响应侧约定，不随请求体传入）。

| 模式    | 适用接口                                    | 响应内容                                               |
| ------- | ------------------------------------------- | ------------------------------------------------------ |
| `sync`  | DE_VAT_REGISTER_FILE、GB_VAT_REGISTER（英国 VAT 注册数据接收）、FR_EPR_REGISTER_LEKO、FR_EPR_REGISTER_CITEO 等同步实时处理 | `data` 直接返回文件数组（§5.1）、落库结果 `{id, customer_email, action}` 或下游约定的 file1~file10 文件槽（§5.4） |
| `async` | ES 海牙系列（`ES_VAT_REGISTER_HAGUE_FILE`/`ES_EPR_REGISTER_HAGUE_FILE`/`ES_EPR_REGISTER_030_FILE`）| 异步受理：`data=null`，文件生成完成后经统一结果回调接口通知调用方（见 §7） |
| `async` | DE_VAT_REGISTER、FR_VAT_REGISTER、IT_VAT_REGISTER、IT_VAT_REGISTER_ANR3（注册受理） | 受理即返回（数据已同步落库），`data` 返回落库结果对象 `{tid, record_id, ...}`，供门户自动注册消费；失败返回 400 |

**sync 流程：**

```
请求 → 校验 → 路由到业务处理 → 同步处理（生成文件 / 按流程约定更新数据）
  → 普通流程返回 data 文件数组 [{url, name, type}]
  → file 槽流程返回 data {file1,...,file10}
  → 注册受理流程（DE_VAT_REGISTER / FR_VAT_REGISTER / IT_VAT_REGISTER / IT_VAT_REGISTER_ANR3）返回 data {tid, record_id}（ProcessMode=async）
```

**async 流程（文件生成类）：**

```
请求 → 校验 → 受理任务
  → 立即返回 { ProcessMode:'async', data:null, bizParam }
文件生成完成后 → 经统一结果回调接口通知调用方（见 §7）：
  成功 → data 携带文件数组（§5.1）或文件槽（§5.4）
  失败（达重试上限）→ 回调错误信息
```

---

## 7. SaaS 异步结果回调接口（delivery/rpa/callback）

> 异步流程（ES 海牙 030、意大利 EPR 授权书等）由系统生成文件完成后，**回调 SaaS 平台统一结果通知接口**，将处理结果（文件/错误）通知 SaaS（示例地址 `http://192.168.1.211:8080/delivery/rpa/callback`，以实际配置为准）。

### 7.1 接口信息

| 项目 | 值 |
| ---- | ---- |
| **接口地址** | `POST https://test-cloud.usaeu.com/prod-api/delivery/rpa/callback`（以实际配置为准） |
| **请求方式** | POST |
| **Content-Type** | `application/json` |
| **超时** | 默认 10 秒，2xx 视为成功；发送失败自动重试（`ES_HAGUE_CALLBACK_MAX_RETRIES` 默认 3、`ES_HAGUE_CALLBACK_RETRY_DELAY` 默认 5 秒，可配），**可能产生重复 POST，接收端须按 `bizParam`+`task_id` 幂等处理（重复通知覆盖式更新，以最后为准）** |

### 7.2 请求体（回调数据）

> 回调体与接口响应约定一致：**任何回调（成功/失败）均原样携带受理请求顶层的 `bizParam`**（不修改、不增删），接收方据此关联业务与受理响应。

**成功回调（携带生成的文件数组）：**

```json
{
    "code": 200,
    "msg": "success",
    "ProcessMode": "async",
    "data": [
        {
            "url": "common-test/generatefile/2026/de_declar_delay/DVAT12312312312312313_123456_alle Anhänge in einem Dokument.pdf",
            "name": "DVAT12312312312312313_123456_alle Anhänge in einem Dokument.pdf",
            "type": "N_IN_ONE_FILE"
        }
    ],
    "bizParam": {
        "BusinessSerialNumber": "DVAT12312312312312313",
        "BusinessId": 123456
    }
}
```

| 字段 | 类型 | 说明 |
| ---- | ---- | ---- |
| `code` | int | 处理结果：`200`=成功，非 200=失败 |
| `msg` | string | 处理消息（成功 `success`，失败为错误原因） |
| `ProcessMode` | string | 处理模式：`async`（异步） |
| `data` | array | 生成的文件数组，每项含 `url`（OSS 相对路径）/`name`（文件名）/`type`（文件类型枚举，见 §5.2） |
| `bizParam` | object | 业务标识信息，原样回传受理请求中的 `bizParam`（`BusinessSerialNumber` / `BusinessId`） |

**失败回调（携带错误信息）：**

```json
{
    "code": 400,
    "msg": "错误原因描述",
    "ProcessMode": "async",
    "data": null,
    "bizParam": {
        "BusinessSerialNumber": "DVAT12312312312312313",
        "BusinessId": 123456
    }
}
```

### 7.3 响应格式（SaaS 返回）

**成功响应：**

```json
{
    "code": 200,
    "msg": null,
    "data": null
}
```

**失败响应（SaaS 校验不通过，如缺少必需参数）：**

```json
{
    "code": 400,
    "msg": "缺少必需参数：PushType",
    "data": null
}
```

> SaaS 返回 `2xx` 即视为回调成功送达；失败（非 2xx）时系统按 `ES_HAGUE_CALLBACK_MAX_RETRIES`（默认 3）自动重试（间隔 `ES_HAGUE_CALLBACK_RETRY_DELAY` 秒），重试期间不通知业务层。**重复 POST 属正常现象**，SaaS 按 `bizParam`+`task_id` 幂等覆盖即可。

### 7.4 cURL 调用示例

```bash
curl --location --request POST 'http://192.168.1.211:8080/delivery/rpa/callback' \
  --header 'Content-Type: application/json' \
  --data-raw '{
    "code": 200,
    "msg": "success",
    "ProcessMode": "sync",
    "data": [
        {
            "url": "common-test/generatefile/2026/de_declar_delay/DVAT12312312312312313_123456_alle Anhänge in einem Dokument.pdf",
            "name": "DVAT12312312312312313_123456_alle Anhänge in einem Dokument.pdf",
            "type": "N_IN_ONE_FILE"
        }
    ],
    "bizParam": {
        "BusinessSerialNumber": "DVAT12312312312312313",
        "BusinessId": 123456
    }
}'
```

---

## 附录 A：Country 枚举

| 代码 | 国家   | 状态   |
| ---- | ------ | ------ |
| DE   | 德国   | 已支持 |
| FR   | 法国   | 已支持 |
| GB   | 英国   | 已支持 |
| IT   | 意大利 | 已支持 |
| ES   | 西班牙 | 已支持 |
| SE   | 瑞典   | 预留   |
| BE   | 比利时 | 预留   |
| NL   | 荷兰   | 预留   |
| PL   | 波兰   | 预留   |
| AT   | 奥地利 | 预留   |
| CZ   | 捷克   | 预留   |
