# Ethoca 服务开通申请

> 为商户或代理子商户提交 Ethoca 预警服务开通申请。

```yaml
openapi: 3.1.0
info:
  title: Ethoca 服务开通申请
  version: 1.0.0
  description: 为商户或代理子商户提交 Ethoca 预警服务开通申请。
paths:
  /ethoca/agency-cw/enrollment/submit:
    post:
      summary: Ethoca 服务开通申请
      description: 为商户或代理子商户提交 Ethoca 预警服务开通申请。
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                merchantNo:
                  type: string
                  description: Onerway 分配的商户号；代理运营商为子商户申请时，使用代理运营商自己的商户号发起请求。
                preDisputeService:
                  type: string
                  description: 要开通的预警服务类型。
                  enum:
                    - ETHOCA_ALERT
                  x-enum-descriptions:
                    ETHOCA_ALERT: Ethoca 拒付预警服务；Ethoca 是 Mastercard 旗下预警网络，覆盖 Mastercard、American
                      Express、Discover 等卡组织，部分地区支持 Visa。
                  x-onerway-constraints:
                    - kind: values
                      text: 本接口固定传 `ETHOCA_ALERT`。
                billDesc:
                  type: string
                  description: 商户账单描述，将显示在持卡人银行账单上；建议使用商户实际经营名称并与收单实际展示保持一致，既便于持卡人和发卡行识别交易，也是
                    Ethoca 将预警匹配到对应商户的依据之一。
                resellerSubMerchantId:
                  type: string
                  description: 代理运营商的子商户标识。
                  x-onerway-condition:
                    - 代理运营商为其管理的子商户申请服务时提供。
                  x-onerway-constraints:
                    - kind: consistency
                      text: 同一个代理运营商（`merchantNo`）可为多个子商户分别申请开通 Ethoca 服务；代理商应为每个子商户分配唯一
                        `resellerSubMerchantId`。
                notes:
                  type: string
                  description: 申请备注，可填写特殊需求或补充说明。
                sign:
                  type: string
                  description: 请求签名字符串；生成方式详见[请求签名](/zh/payments/get-started/request-signing)。
              required:
                - merchantNo
                - preDisputeService
                - billDesc
                - sign
            examples:
              submit-ethoca-enrollment:
                summary: 提交 Ethoca 开通申请
                value:
                  billDesc: EXAMPLE STORE US
                  merchantNo: replace_with_merchant_no
                  notes: Open Ethoca alert service
                  preDisputeService: ETHOCA_ALERT
                  resellerSubMerchantId: demo_sub_merchant_001
                  sign: "{{SIGN}}"
      responses:
        "200":
          description: Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  respCode:
                    type: string
                    description: 响应码；`20000` 表示开通申请已成功提交受理，并不代表服务已开通。最终结果以[查询 Ethoca
                      申请状态接口](/zh/payments/api-reference/endpoints/query-ethoca-enrollments)或
                      [Ethoca
                      报备状态通知](/zh/payments/api-reference/webhooks/ethoca-enrollment-changed)为准；其余为错误码。完整码表见[响应码](/zh/payments/api-reference/response-codes)。
                  respMsg:
                    type: string
                    description: 响应码对应的可读说明。
                  data:
                    type: object
                    properties:
                      id:
                        type: string
                        description: 申请单号，用于后续查询申请状态或发起状态变更。
                      sign:
                        type: string
                        description: 响应签名字符串，可用于校验响应数据完整性。
                    description: 业务数据对象，包含本次服务开通申请的申请单号。
```
