> ## 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.

# QR validation

> Decodes a base64 QR image and retrieves the associated information from the QR provider.



## OpenAPI

````yaml /openapi-v2.en.yaml post /v2/transactions/payouts/validate/qr
openapi: 3.0.0
info:
  title: YP API Partner
  description: Integration documentation for YP API partners.
  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: Queries
    description: ''
  - name: Webhooks
    description: ''
  - name: Fees
    description: ''
  - name: Clients
    description: ''
paths:
  /v2/transactions/payouts/validate/qr:
    post:
      tags:
        - Payout
      summary: QR validation
      description: >-
        Decodes a base64 QR image and retrieves the associated information from
        the QR provider.
      operationId: scanPayoutQrV2
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ValidateQrRequestDoc'
      responses:
        '201':
          description: QR code validated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidateQrResponseDoc'
        '400':
          description: A valid QR code could not be decoded or the request is invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationErrorResponseDoc'
        '401':
          description: Missing, invalid, or expired token.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedResponseDoc'
      security:
        - bearer: []
components:
  schemas:
    ValidateQrRequestDoc:
      type: object
      properties:
        image:
          type: string
          example: iVBORw0KGgoAAAANSUhEUgAA...
          description: Base64-encoded QR image.
          format: byte
      required:
        - image
    ValidateQrResponseDoc:
      type: object
      properties:
        code:
          type: object
          example: 200
          nullable: true
          description: Internal result code. Null when the QR code could not be processed.
        message:
          type: string
          example: QR code scanned successfully
          description: Result description.
        details:
          description: Details extracted from the QR code after successful validation.
          allOf:
            - $ref: '#/components/schemas/ValidateQrDetailsDoc'
      required:
        - code
        - message
    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
    ValidateQrDetailsDoc:
      type: object
      properties:
        titularDestino:
          type: string
          example: Juan Perez
          description: Destination holder name.
        cuentaDestino:
          type: string
          example: '1234567890'
          description: Destination account extracted from the QR code.
        ciNitDestino:
          type: string
          example: '1234567'
          description: Identity document or tax ID of the destination holder.
        nombreBancoDestino:
          type: string
          example: Example Bank
          description: Destination bank name.
        codigoBancoDestino:
          type: string
          example: '101'
          description: Destination bank code.
        moneda:
          type: string
          example: BOB
          description: QR currency.
        monto:
          type: number
          example: 100.5
          description: QR amount.
        glosa:
          type: string
          example: Supplier payment
          description: Memo or description included in the QR code.
        numeroReferencia:
          type: string
          example: '123456789'
          description: QR reference number.
        fechaVencimiento:
          type: string
          example: '2026-05-13T23:59:59.000Z'
          description: QR code expiration date.
      required:
        - titularDestino
        - cuentaDestino
        - ciNitDestino
        - nombreBancoDestino
        - codigoBancoDestino
        - moneda
        - monto
        - glosa
        - numeroReferencia
        - fechaVencimiento
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: JWT
      type: http
      description: JWT obtained from /v2/auth/login

````