# Submit RDR enrollment

> Submit an application to enable the Visa Rapid Dispute Resolution service for a merchant or agency sub-merchant.

```yaml
openapi: 3.1.0
info:
  title: Submit RDR enrollment
  version: 1.0.0
  description: Submit an application to enable the Visa Rapid Dispute Resolution
    service for a merchant or agency sub-merchant.
paths:
  /rdr/agency-cw/enrollment/submit:
    post:
      summary: Submit RDR enrollment
      description: Submit an application to enable the Visa Rapid Dispute Resolution
        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: Service to enroll in. RDR (Rapid Dispute Resolution) is Visa’s
                    dispute-prevention service for Visa card transactions. After
                    the merchant configures handling rules, eligible disputes
                    can be processed automatically before they become
                    chargebacks.
                  enum:
                    - RDR
                  x-enum-descriptions:
                    RDR: Visa Rapid Dispute Resolution service.
                  x-onerway-constraints:
                    - kind: values
                      text: Submit `RDR` for this endpoint.
                bin:
                  type: string
                  description: Acquirer BIN (Bank Identification Number), identifying the
                    institution that provides acquiring services to the
                    merchant.
                dba:
                  type: string
                  description: Merchant doing-business-as name displayed to cardholders on
                    statements or transactions. When an agency operator applies
                    for a sub-merchant, provide the sub-merchant actual trading
                    name.
                caid:
                  type: string
                  description: Card Acceptor ID (CAID), assigned by the acquirer to identify the
                    merchant and its transactions on the card-network side.
                mcc:
                  type: string
                  description: Merchant Category Code (MCC), a four-digit card-network code
                    identifying the merchant business category.
                arn:
                  type: string
                  description: Acquirer Reference Number (ARN), the unique tracking number for a
                    transaction as it moves between the acquirer and card
                    network.
                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 so each RDR application remains
                        independent.
                notes:
                  type: string
                  description: Application note for special requirements or supplementary
                    information.
                comments:
                  type: string
                  description: Review comment field. Leave it empty for merchant-submitted
                    applications; use `notes` for supplementary information.
                  x-onerway-constraints:
                    - kind: rule
                      text: Leave this field empty for merchant-submitted applications. Use `notes`
                        for 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
                - bin
                - dba
                - caid
                - mcc
                - arn
                - sign
            examples:
              submit-rdr-enrollment:
                summary: Submit RDR enrollment
                value:
                  arn: replace_with_acquirer_reference_number
                  bin: replace_with_bin
                  caid: replace_with_card_acceptor_id
                  dba: EXAMPLE STORE US
                  mcc: "5999"
                  merchantNo: replace_with_merchant_no
                  notes: Open RDR service
                  preDisputeService: RDR
                  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 RDR service
                      has been enabled. The service becomes active only after
                      review and the enrollment reaches `ENROLLED`. Confirm the
                      final state through [Query RDR
                      enrollments](/payments/api-reference/endpoints/query-rdr-\
                      enrollments) or the [RDR enrollment status
                      webhook](/payments/api-reference/webhooks/rdr-enrollment-\
                      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.
```
