# Verify batch using OTP

Payees (previously "beneficiaries"). Completes the verification process for updating the payee batch.
If the outcome of the verification is successful, the payee update batch is executed.
*Note that on the Sandbox Environment, text messages are not sent and the verificationCode is always "123456".*

Endpoint: POST /beneficiaries/batch/{id}/challenges/otp/{channel}/verify
Version: v3
Security: auth_token, api-key

## Path parameters:

  - `id` (string, required)
    The unique identifier of the Payee Batch Operation.

  - `channel` (string, required)
    The unique identifier for the channel.

## Request fields (application/json):

  - `verificationCode` (string, required)
    A randomly generated one-time use code.

## Response 400 fields (application/json):

  - `message` (string)
    When present helps to identify and fix the problem.

  - `syntaxErrors` (object)
    Is returned as part of an HTTP error response whenever a syntax error is detected. A list of the fields together with their syntax error will be provided.

  - `syntaxErrors.invalidFields` (array)

  - `syntaxErrors.invalidFields.params` (array)

  - `syntaxErrors.invalidFields.fieldName` (string)

  - `syntaxErrors.invalidFields.error` (string)
    Enum: "REQUIRED", "HAS_TEXT", "REQUIRES", "SIZE", "RANGE", "IN", "NOT_IN", "REGEX", "EXACTLY", "AT_LEAST", "AT_MOST", "ALL_OR_NONE"

## Response 403 fields (application/json):

  - `errorCode` (string)
    Enum: "INSUFFICIENT_PERMISSIONS"

## Response 409 fields (application/json):

  - `errorCode` (string)
    Enum: "STATE_INVALID", "CHANNEL_NOT_SUPPORTED", "CHANNEL_NOT_REGISTERED", "VERIFICATION_CODE_EXPIRED", "VERIFICATION_CODE_INVALID", "ONE_CHALLENGE_LIMIT_REMAINING", "CHALLENGE_LIMIT_EXCEEDED"

## Response default fields (application/json):

  - `code` (string)

  - `message` (string)

