# Submit Ethoca enrollment

> Submit an application to enable the Ethoca alert service for a merchant or agency sub-merchant.

```yaml
openapi: 3.1.0
info:
  title: Submit Ethoca enrollment
  version: 1.0.0
  description: Submit an application to enable the Ethoca alert service for a
    merchant or agency sub-merchant.
paths:
  /ethoca/agency-cw/enrollment/submit:
    post:
      summary: Submit Ethoca enrollment
      description: Submit an application to enable the Ethoca alert service for a
        merchant or agency sub-merchant.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                merchantNo:
                  type: string
                  description: Merchant number assigned by Onerway. When an agency operator
                    submits the application for a sub-merchant, use the agency
                    operator merchant number.
                preDisputeService:
                  type: string
                  description: Alert service type to enroll.
                  enum:
                    - ETHOCA_ALERT
                  x-enum-descriptions:
                    ETHOCA_ALERT: Ethoca alert service. Ethoca is a Mastercard-owned alert network
                      covering Mastercard, American Express, Discover, and, in
                      some regions, Visa.
                  x-onerway-constraints:
                    - kind: values
                      text: Submit `ETHOCA_ALERT` for this endpoint.
                billDesc:
                  type: string
                  description: Merchant billing descriptor shown on the cardholder bank statement.
                    Use the actual merchant trading name and keep it consistent
                    with the acquirer-facing billing descriptor so cardholders
                    and issuers can recognize the transaction and Ethoca can
                    match alerts to the merchant.
                resellerSubMerchantId:
                  type: string
                  description: Sub-merchant identifier assigned by the agency operator.
                  x-onerway-condition:
                    - Provide this field when an agency operator applies for a
                      managed sub-merchant.
                  x-onerway-constraints:
                    - kind: consistency
                      text: The same agency operator `merchantNo` can enroll multiple sub-merchants.
                        Assign a unique `resellerSubMerchantId` to each
                        sub-merchant.
                notes:
                  type: string
                  description: Application note for special requirements or supplementary
                    information.
                sign:
                  type: string
                  description: Request signature string. See [Request
                    signing](/payments/get-started/request-signing) for how to
                    generate it.
              required:
                - merchantNo
                - preDisputeService
                - billDesc
                - sign
            examples:
              submit-ethoca-enrollment:
                summary: Submit Ethoca enrollment
                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` means the enrollment application was submitted and
                      accepted for processing. It does not mean the service has
                      been enabled. Confirm the final state through [Query
                      Ethoca
                      enrollments](/payments/api-reference/endpoints/query-etho\
                      ca-enrollments) or the [Ethoca enrollment status
                      webhook](/payments/api-reference/webhooks/ethoca-enrollme\
                      nt-changed). Other values are error codes. See [Response
                      codes](/payments/api-reference/response-codes)."
                  respMsg:
                    type: string
                    description: Human-readable message for the response code.
                  data:
                    type: object
                    properties:
                      id:
                        type: string
                        description: Enrollment application ID. Use it to query the application status
                          or request a status transition.
                      sign:
                        type: string
                        description: Response signature string for verifying response integrity.
                    description: Business data object containing the enrollment application ID.
```
