> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mesadepagos.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Solicitar las verificaciones de un cliente

> Averigua que verificaciones hacen falta para que el cliente cobre a su nombre y las solicita. Es idempotente. El body es opcional: sin el se piden todas las monedas.



## OpenAPI

````yaml /openapi-v2.yaml post /v2/business-clients/{clientId}/endorsements
openapi: 3.0.0
info:
  title: YP API Partner
  description: Documentación de integración para partners de YP API.
  version: v2
  contact: {}
servers:
  - url: https://sandbox-rampa.mesadepagos.com/api
    description: Sandbox
security: []
tags:
  - name: Auth
    description: ''
  - name: Quotes
    description: ''
  - name: Payin
    description: ''
  - name: Payout
    description: ''
  - name: Wallet
    description: ''
  - name: Consultas
    description: ''
  - name: Webhooks
    description: ''
  - name: Fees
    description: ''
  - name: Clients
    description: ''
  - name: Client verifications
    description: Las verificaciones que habilitan a un cliente a cobrar a su nombre.
  - name: Virtual accounts
    description: 'Las cuentas de cobro: las del partner y las de sus clientes.'
paths:
  /v2/business-clients/{clientId}/endorsements:
    post:
      tags:
        - Client verifications
      summary: Solicitar las verificaciones de un cliente
      description: >-
        Averigua que verificaciones hacen falta para que el cliente cobre a su
        nombre y las solicita. Es idempotente. El body es opcional: sin el se
        piden todas las monedas.
      operationId: requestEndorsements
      parameters:
        - name: clientId
          required: true
          in: path
          description: Identificador del cliente.
          schema:
            format: uuid
            example: 550e8400-e29b-41d4-a716-446655440000
            type: string
      requestBody:
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RequestEndorsementsRequestDoc'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RequestEndorsementsResponseDoc'
        '400':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationErrorResponseDoc'
        '401':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedResponseDoc'
        '404':
          description: El cliente no existe o no pertenece al partner.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFoundResponseDoc'
      security:
        - bearer: []
components:
  schemas:
    RequestEndorsementsRequestDoc:
      type: object
      properties:
        currencies:
          type: array
          minItems: 1
          example:
            - EUR
            - USD
          description: >-
            Monedas que se quieren habilitar. Si se omite, se piden todas.
            Conviene acotarlo: cada verificacion abre datos que una persona
            tiene que completar a mano.
          items:
            type: string
            enum:
              - EUR
              - USD
              - AED
              - AUD
              - GBP
    RequestEndorsementsResponseDoc:
      type: object
      properties:
        endorsements:
          type: array
          items:
            $ref: '#/components/schemas/EndorsementDoc'
        failed:
          description: >-
            Monedas que no se pudieron habilitar. Vacio en el camino feliz. Si
            viene con algo, esa moneda no avanza sola.
          type: array
          items:
            $ref: '#/components/schemas/FailedEndorsementDoc'
      required:
        - endorsements
        - failed
    ValidationErrorResponseDoc:
      type: object
      properties:
        statusCode:
          type: number
          example: 400
        message:
          type: string
          example: Validation failed
        error:
          type: string
          example: Bad Request
      required:
        - statusCode
        - message
        - error
    UnauthorizedResponseDoc:
      type: object
      properties:
        statusCode:
          type: number
          example: 401
        message:
          type: string
          example: Unauthorized
      required:
        - statusCode
        - message
    NotFoundResponseDoc:
      type: object
      properties:
        statusCode:
          type: number
          example: 404
        message:
          type: string
          example: Endorsement subject not found
      required:
        - statusCode
        - message
    EndorsementDoc:
      type: object
      properties:
        currencies:
          example:
            - EUR
          description: >-
            Las monedas que esta verificacion habilita a cobrar a nombre del
            cliente.
          type: array
          items:
            type: string
        status:
          type: string
          enum:
            - pending
            - dataRequired
            - inProgress
            - inReview
            - approved
            - rejected
          example: dataRequired
          description: >-
            `dataRequired` significa que alguno de los sujetos tiene datos
            pendientes.
        requestedAt:
          type: string
          example: '2026-09-16T12:00:00.000Z'
          nullable: true
          format: date-time
        resolvedAt:
          type: string
          example: null
          nullable: true
          format: date-time
          description: Se sella cuando la verificacion queda aprobada o rechazada.
        rejectionReason:
          type: string
          example: null
          nullable: true
        subjects:
          description: >-
            Una verificacion se abre en varios sujetos: la empresa y cada socio
            o director. Cada uno completa sus datos por separado.
          type: array
          items:
            $ref: '#/components/schemas/EndorsementSubjectDoc'
      required:
        - currencies
        - status
        - requestedAt
        - resolvedAt
        - rejectionReason
        - subjects
    FailedEndorsementDoc:
      type: object
      properties:
        currencies:
          example:
            - EUR
          type: array
          items:
            type: string
        reason:
          type: string
          enum:
            - termsNotAccepted
            - verificationNotApproved
            - notAvailableForAccountType
            - alreadyRequested
            - unavailable
          example: termsNotAccepted
          description: Por que no se pudo habilitar esa moneda.
      required:
        - currencies
        - reason
    EndorsementSubjectDoc:
      type: object
      properties:
        id:
          type: string
          example: 2363e78c-163b-4ff9-a25c-dfcc71d56c08
          format: uuid
          description: Identificador del sujeto. Es el que se usa para pedir su enlace.
        name:
          type: string
          example: Acme Bolivia SRL
          nullable: true
          description: Nombre del sujeto, para saber a quien corresponde cada enlace.
        type:
          type: string
          example: individual
          enum:
            - business
            - individual
          description: 'La empresa, o una persona: un socio, un director o el titular.'
        isPrimary:
          type: boolean
          example: true
          description: Verdadero cuando el sujeto es la empresa.
        status:
          type: string
          enum:
            - pending
            - inReview
            - approved
            - rejected
          example: pending
          description: '`pending` cuando todavia tiene datos por completar.'
        pending:
          $ref: '#/components/schemas/PendingRequirementsDoc'
        linkIssuedAt:
          type: string
          example: '2026-09-16T12:00:00.000Z'
          nullable: true
          format: date-time
          description: Cuando se emitio su ultimo enlace. Null si nunca se pidio.
      required:
        - id
        - name
        - type
        - isPrimary
        - status
        - pending
        - linkIssuedAt
    PendingRequirementsDoc:
      type: object
      properties:
        fields:
          example:
            - birthCountry
            - address
          description: Campos que esa persona todavia tiene que completar.
          type: array
          items:
            type: string
        documents:
          example:
            - ID
          description: Categorias de documento que tiene que subir.
          type: array
          items:
            type: string
      required:
        - fields
        - documents
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: JWT
      type: http
      description: JWT obtenido desde /v2/auth/login o /v3/auth/login

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.