/merchant/psp/sub-merchant/open-partner 创建二级商户
接口背景
/merchant/psp/sub-merchant/open-partner 提供给一级商户用于创建二级商户。一级商户通过该接口提交二级商户的主体资料、注册信息、业务信息、申请产品及预计交易规模,创建二级商户。
商户创建流程图
mermaid
sequenceDiagram
autonumber
participant M as 一级商户
participant A as adopay
participant O as adopay运营人员
M->>A: 调用创建二级商户的接口
A->>A: 校验并落库,记录为待审核状态
A-->>M: 返回申请受理结果
A->>O: 提交二级商户申请审核
O->>O: 审核商户资料
alt 审核通过
O->>A: 提交审核通过结果
A->>A: 创建二级商户
A->>A: 创建登录账号
A->>A: 开立结算账户
A-->>M: 回调商户创建最终结果(SUCCESS)
M-->>A: 回执 SUCCESS 或 OK
else 审核拒绝
O->>A: 提交审核拒绝最终结果
A->>A: 终止创建流程并记录拒绝结果
A-->>M: 回调商户创建结果(FAILED)
M-->>A: 回执 SUCCESS 或 OK
end接口接入规范
接口请求地址
| 项目 | 内容 |
|---|---|
| 请求方式 | POST |
| 请求路径 | /merchant/psp/sub-merchant/open-partner |
| Content-Type | application/json |
| 接口用途 | 创建二级商户 |
接口请求字段
| 字段名 | 位置 | 类型 | 字段长度 | 是否必填 | 说明 |
|---|---|---|---|---|---|
X-Merchant-Id | Header | string | 64 | 是 | 一级商户号。 |
X-Timestamp | Header | int | 19 | 是 | Unix 秒级请求时间戳,用于请求时效校验。 |
X-Nonce | Header | string | 64 | 是 | 请求防重放随机字符串。 |
Digest | Header | string | 52 | 是 | 请求体摘要,格式为 SHA-256=<Base64摘要>。 |
Authorization | Header | string | - | 是 | ES256 请求签名信息,其中 keyId 为商户密钥版本号。 |
seqNo | Body | string | 128 | 是 | 请求流水号,作为幂等键。 |
subMerchantNo | Body | string | 64 | 否 | 二级商户号。 优先使用该请求值,如果该值为空则 Adopay 自动生成。 |
subMerchantName | Body | string | 128 | 是 | 二级商户名称。 |
subjectType | Body | string | 64 | 是 | 二级商户的主体类型, COMPANY 公司 / INDIVIDUAL 个人 。 |
registrationCountry | Body | string | 64 | 是 | 注册国家。 |
registrationNo | Body | string | 64 | 是 | 主体注册号。 |
taxNo | Body | string | 64 | 否 | 税号。 |
industry | Body | string | 32 | 是 | 所属行业,取值见“行业枚举”章节。 |
websiteUrl | Body | string | 255 | 是 | 官方网站地址。 |
bizDescription | Body | string | 512 | 是 | 业务说明。 |
bizModel | Body | string | 16 | 是 | 商户业务模式:当前支持 B2B(企业对企业)和 B2C(企业对客户), BOTH(所有)。 |
appliedProduct | Body | string | 16 | 是 | 申请开通的产品。 |
monthlyTransactionAmount | Body | decimal(25,4) | 25,4 | 是 | 预计月交易金额。 |
monthlyTransactionCount | Body | int | 19 | 否 | 预计月交易笔数。 |
averageOrderAmount | Body | decimal(25,4) | 25,4 | 否 | 平均客单价。 |
collectionScene | Body | string | 16 | 否 | 收款场景说明。 |
payoutScene | Body | string | 16 | 否 | 付款场景说明。 |
notifyUrl | Body | string | 255 | 否 | 合作商接收二级商户创建结果通知的地址。优先使用上送,其次使用合作商配置url。 |
行业枚举
| 枚举值 | 说明 |
|---|---|
ECOMMERCE | 电商/零售 |
GAMING | 游戏 |
DIGITAL_CONTENT | 数字内容/流媒体 |
SAAS | SaaS/软件/工具 |
TRADE | B2B贸易 |
PROFESSIONAL_SERVICES | 企业/专业服务 |
TRAVEL | 旅游/酒店/票务 |
EDUCATION | 教育 |
LOGISTICS | 物流/运输 |
FINANCIAL_SERVICES | 金融/金融科技 |
ADVERTISING | 广告/营销 |
OTHER | 其他 |
请求示例
请求头示例:
http
POST /merchant/psp/sub-merchant/open-partner HTTP/1.1
Content-Type: application/json
X-Merchant-Id: 92315566000120
X-Timestamp: 1790200000
X-Nonce: 550e8400-e29b-41d4-a716-446655440000
Digest: SHA-256=<Base64摘要>
Authorization: Signature keyId="v1",alg="ES256",headers="(request-target) x-timestamp x-nonce digest",signature="<ES256_SIGNATURE_BASE64>"请求 Body 示例:
json
{
"seqNo":"2322342374234234423423",
"subMerchantNo": "S10001",
"subMerchantName": "Example Sub Merchant Ltda.",
"subjectType": "business",
"registrationCountry": "BR",
"registrationNo": "12345678000190",
"taxNo": "12345678000195",
"industry": "SAAS",
"websiteUrl": "https://merchant.example.com",
"bizDescription": "Provide online software and payment services.",
"bizModel": "B2B",
"appliedProduct": "pix",
"monthlyTransactionAmount": 100000.00,
"monthlyTransactionCount": 1000,
"averageOrderAmount": 100.00,
"collectionScene": "ONLINE",
"payoutScene": "SUPPLIER",
"notifyUrl": "https://merchant.example.com/callback/sub-merchant/create"
}接口响应字段
接口使用统一的 status、msg、data 响应结构。当前接口没有业务响应字段,data 返回空对象。响应体中的 status 为 200 表示创建请求受理成功。
| 字段名 | 类型 | 是否必返 | 说明 |
|---|---|---|---|
status | int | 是 | 响应码 |
msg | string | 是 | 与 status 对应 |
data | object | 是 | 业务响应数据;当前接口无业务响应字段,返回空对象。 |
响应示例
json
{
"status": 200,
"msg": "sucesso",
"data": {}
}