openapi: 3.0.0
info:
  version: 1.0.0
  title: Documentación de Paylands
  contact:
    name: Alguna pregunta? Contacta con nosotros aquí
    email: soporte@paylands.com
  x-logo:
    url: 'https://paylands-web-assets.s3.eu-west-1.amazonaws.com/logos/documentation-paylands-logo.png'
    backgroundColor: '#FFFFFF'
    altText: Referencia API Paylands
servers:
  - url: 'https://api.paylands.com/v1/sandbox'
    description: Sandbox environment
  - url: 'https://api.paylands.com/v1'
    description: Production environment
security: []
tags:
  - name: Autenticación
    description: |-
      Cuando uses la presente API deberás autenticar las llamadas mediante tu API Key en cada petición. Tu API Key conlleva muchos privilegios por lo que asegúrate de mantenerla en secreto. No compartas tu API Key ni la expongas nunca en el código del lado del cliente de cualquier sitio web público.

      La autenticación de la API se realiza mediante HTTP Basic Auth. Provee tu API Key como valor para el campo username (nombre de usuario). No es necesario proveer valor para el campo password (contraseña). Si se setea la cabecera Basic Auth manualmente, la API Key debe ir codificada en base64.

      Si necesita autenticar via bearer auth (como por ejemplo, para una petición cross-origin), usa el modificador -H "Authorization: Bearer <API Key>" en lugar de -u <API Key>:.

      Todas las peticiones a la API deben realizarse sobre HTTPS. Las peticiones realizadas sobre HTTP serán denegadas; así como las peticiones sin autenticar.
  - name: API Keys
    description: ''
  - name: Campañas MoTo
    description: ''
  - name: Operaciones en lote
    description: 'Mediante este endpoint se puede enviar un CSV al servidor conteniendo varias operaciones que serán ejecutadas en un proceso batch. Este CSV debe contener una línea de cabecera con el nombre de los campos. La segunda fila y siguientes contendrán toda la información de las diferentes operaciones. Los campos dentro de cada fila deben estar separados por una coma (,).'
  - name: Pagos
    description: ''
  - name: Abonos
    description: ''
  - name: Transacciones
    description: ''
  - name: Tarjetas
    description: ''
  - name: Cuentas bancarias
    description: ''
  - name: Operaciones comunes
    description: ''
  - name: Órdenes
    description: ''
  - name: Comercios
    description: Paylands ofrece la posibilidad de crear comercios via api para aquellos comercios que sean partners.
  - name: Servicios
    description: Paylands ofrece la posibilidad de crear servicios via api para aquellos comercios que sean partners.
  - name: Terminales
    description: ''
  - name: Clientes
    description: ''
  - name: Card Present
    description: |-
      En el ámbito de los pagos electrónicos, el término "Card Present" se refiere a las transacciones en las que la tarjeta de pago física se encuentra presente en el momento de la transacción. Este tipo de pagos se realizan típicamente a través de un punto de venta (POS) físico, donde la tarjeta se desliza, inserta (en caso de tarjetas con chip) o se acerca (en el caso de tarjetas contactless o NFC) al dispositivo.

      En esta sección se describen todos los endpoints disponibles en Paylands para poder ejecutar operaciones desde dispositivos físicos. Estos endpoints siempre devolverán la respuesta de forma síncrona.

      En caso de que la operación requiera SCA, la respuesta contendrá `order.status=AUTHENTICATION_REQUIRED` y el campo `transactions[0].payment_data.terminal_action` indicará el tipo de acción que el terminal deberá realizar.
        Los posibles valores serán:
        - REQUEST_PIN
        - SWITCH_INTERFACE

      Una vez el terminal ha solicitado la autenticación al usuario, deberá llamar al mismo endpoint incluyendo el campo `sca.original_order_uuid` con el order.uuid recibido en la respuesta anterior.
  - name: Subscripciones
    description: |-
      Paylands ofrece la posibilidad de realizar pagos recurrentes mediante suscripciones. Para ello es necesario registrar el producto que se está ofreciendo - por ejemplo, el acceso a un servicio de streaming. Hecho esto pueden registrarse uno o más planes para poder acceder a este producto - por ejemplo, una cuota de 10€/mes y otra de 100€/año.

      Para registrar las subscripciones sugerimos elaborar una carta de pago personalizada donde el cliente pueda seleccionar el plan que desee y la tarjeta que será cobrada. Una vez se cumpla el plazo establecido, el cliente recibirá un cargo en su tarjeta y el comercio recibirá una notificación con la información del cargo efectuado y si éste ha sido exitoso o no. Todas estas operaciones se realizarán a través de la API de Paylands.

      Los planes son flexibles, pudiéndose cobrar diariamente, semanalmente, mensualmente o anualmente. También es posible que el cobro sea cada varios días, semanas o meses. La primera cuota puede retrasarse varios días o semanas para que los clientes puedan cancelar su suscripción antes de que se realice el primer cobro. Una vez un usuario se ha registrado puede conocerse el día en el cual se realizará el próximo cobro, y el estado de su suscripción - pendiente de pago, pagada o cancelada.
  - name: POSMS (Dispositivos físicos)
    description: |-
      Paylands ofrece la posibilidad de realizar pagos físicos mediante datáfonos inteligentes. Para utilizar este servicio, es necesarío que desde soporte se le registre en la plataforma y se le configuren los dispositivos necesarios con las credenciales del servicio de Credorax que vaya a ser usado en cada uno de ellos. Una vez tenga los datáfonos inteligentes, puede comenzar a procesar pagos a través de ellos.

      En el entorno de sandbox, es posible simular el comportamiento en Paylands de los pagos realizados en dispositivos físicos, sin necesidad de disponer de uno. Para ello, es necesario que desde soporte le asignen un dispositivo con el tipo de comunicación SIMULATION. Estos dispositivos los podrá obtener en el listado de dispositivos junto a los demás. Si lanza un pago, o una devolución, contra uno de estos dispositivos, el pago será procesado automáticamente tras 10 segundos, simulando el comportamiento de pasar la tarjeta en el dispositivo físico.

      Puede configurar el tipo de respuesta esperada según la cantidad del pago:
      - Cancelado: el pago será procesado como CANCELADO si la cantidad es 100.
      - Rechazado: el pago será procesado como RECHAZADO si la cantidad es 200.
      - Pagado: el pago será procesado como PAGADO si la cantidad es cualquier otra.
  - name: UNNAMED
    description: Quizá debamos excluir estos endpoints de aquí.
  - name: Listas de seguridad
    description: ''
  - name: Chargebacks
    description: 'Permite la interacción con los chargebacks: listar, obtener, disputar o cancelar una disputa de chargeback'
x-tagGroups:
  - name: Tabla de contenidos
    tags:
      - Autenticación
      - API Keys
      - Pagos
      - Abonos
      - Órdenes
      - Transacciones
      - Comercios
      - Servicios
      - Terminales
      - Clientes
  - name: Métodos de pago
    tags:
      - Tarjetas
      - Cuentas bancarias
      - Operaciones comunes
  - name: Operaciones adicionales
    tags:
      - Campañas MoTo
      - Operaciones en lote
      - Subscripciones
      - POSMS (Dispositivos físicos)
      - Listas de seguridad
      - Chargebacks
paths:
  /:
    get:
      operationId: authentication
      tags:
        - Autenticación
        - Authentication
      parameters:
        - name: Authorization
          in: header
          description: Cabecera de autorización a la que debes añadir tu API Key.
          x-description-i18n:
            eng: Authorization header containing your API key.
          required: true
          example: Basic RXN0YUVzVHVBUElLZXlNYW50ZW5sYVNlZ3VyYQ==
          x-example-i18n:
            eng: Basic VGhpc0lzWW91ckFQSUtleUtlZXBJdFNhZmU=
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    code: 200
                    message: OK
                    current_time: '2019-05-30T12:55:48+0200'
              schema:
                $ref: '#/components/schemas/ResponseOK'
          description: OK
        '400':
          content:
            application/json:
              examples:
                response:
                  value:
                    code: 400
                    message: Bad Request
                    details: '<service> parameter is not valid. Please, review documentation.'
              schema:
                $ref: '#/components/schemas/ResponseKO'
          description: Bad request
        '403':
          content:
            application/json:
              examples:
                response:
                  value:
                    code: 403
                    message: Forbidden
                    current_time: '2019-05-30T12:55:48+0200'
              schema:
                $ref: '#/components/schemas/ResponseKO'
          description: Forbidden
      summary: Autenticación de peticiones
      description: Ejemplo de como autenticar todas las peticiones a la API.
      x-description-i18n:
        eng: API Request authentication example.
      x-summary-i18n:
        eng: Request authentication
  /api-key/me:
    get:
      operationId: my-api-key-profiles
      tags:
        - API Keys
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    code: 200
                    current_time: '2019-05-30T12:55:48+0200'
                    message: OK
                    profiles:
                      - payment
                      - readonly
                      - tokenize
                      - batch_authorization
                      - keyentry
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      profiles:
                        type: array
                        items:
                          $ref: '#/components/schemas/APIKeyProfile'
                        description: Todos los perfiles de API key a los que tiene acceso el cliente que ha realizado la petición.
                        x-description-i18n:
                          eng: Every profile this API key has access to.
                    required:
                      - profiles
          description: OK
      summary: Ver los perfiles de mi API key
      description: 'Este endpoint sirve para obtener los perfiles de la API key que se ha usado en la petición. Si la API key tiene acceso total, se devolverá el perfil `all`.'
      x-description-i18n:
        eng: 'This endpoint returns the profiles of the API key that was used in the request. If the API key has total access, it will return `all`.'
      x-summary-i18n:
        eng: View my API key profiles
  /api-key/profiles:
    get:
      operationId: api-key-profiles
      tags:
        - API Keys
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    code: 200
                    current_time: '2019-05-30T12:55:48+0200'
                    message: OK
                    profiles:
                      - payment
                      - refund
                      - readonly
                      - card
                      - tokenize
                      - moto
                      - batch_authorization
                      - batch_refund
                      - keyentry
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      profiles:
                        type: array
                        items:
                          $ref: '#/components/schemas/APIKeyProfile'
                        description: Todos los perfiles de API key existentes.
                        x-description-i18n:
                          eng: All existing API profiles.
          description: OK
      summary: Obtener perfiles API key
      description: |-
        Este endpoint sirve para obtener todos los perfiles que puede tener una API key.
        * `all`: Acceso total
        * `payment`: Creación de órdenes, pagos, devoluciones, confirmaciones, cancelaciones, tokenización de tarjetas
        * `refund`: Devolver órdenes.
        * `readonly`: Leer órdenes, clientes, tarjetas, etc,
        * `card`: Tokenizar, listar, modificar y borrar tarjetas
        * `tokenize`: Tokenizar tarjetas
        * `moto`: Lanzar campañas MoTo
        * `batch_authorization`: Lanzar pagos en lote
        * `batch_refund`: Lanzar devoluciones en lote
        * `keyentry`: Procesar pagos manuales
      x-description-i18n:
        eng: |-
          This endpoint returns all the profiles that an API key can have.
          * `all`: Full access
          * `payment`: Order creation, payment, refunds, confirmation and cancellation, card tokenization
          * `refund`: Refunding orders.
          * `readonly`: Reading orders, customers, cards, etc
          * `card`: Tokenizing, listing, modifying and deleting cards
          * `tokenize`: Card tokenization
          * `moto`: Uploading MoTo campaigns
          * `batch_authorization`: Uploading batches of payments
          * `batch_refund`: Uploading batches of refunds
          * `keyentry`: Processing manual payments
      x-summary-i18n:
        eng: View the profiles of my API key
  /batch/authorizations:
    post:
      operationId: batch-payments-file
      tags:
        - Operaciones en lote
        - Batch operations
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                data:
                  type: string
                  description: Fichero CSV codificado en base64.
                  x-description-i18n:
                    eng: CSV file encoded in base64.
                execute_at:
                  type: string
                  description: 'Fecha a partir de la cual se procesará el fichero. Si no se especifica esta fecha, el fichero se encolará para su procesado en el momento del envío.'
                  nullable: true
                  x-description-i18n:
                    eng: 'Date after which the file will be processed. If this date is not specified, the file will be queued for processing as soon as it is uploaded.'
                filename:
                  type: string
                  description: Nombre del fichero bajo el que se agruparán los pagos enviados.
                  x-description-i18n:
                    eng: Name of the file under which the payments will be grouped.
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
              example:
                data: QU1PVU5ULENBUkQsQ1VTVE9NRVJfRVhURVJOQUxfSUQsU0VSVklDRSxBRERJVElPTkFMLFVSTF9QT1NUDQoxMjAzNSxFNzZBNTdGRi00REJDLTRBM0QtQjZFMy0wNTIwRThCMTNFM0YsMzA4LDExNEFCNDI0LTAyM0ItNEUxMy
                execute_at: '2017-11-11 11:11:11'
                filename: test.csv
                signature: 121149a0ba5361191d740fa898784a8b
              required:
                - signature
                - filename
                - data
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2017-10-26T17:28:06+0200'
              schema:
                $ref: '#/components/schemas/ResponseOK'
          description: OK
        '400':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Bad Request
                    code: 400
                    errors:
                      - line: 1
                        msg: '<amount> parameter is not numeric. Ex: 100 for 1.00 €'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseKO'
                  - type: object
                    properties:
                      errors:
                        type: array
                        items:
                          $ref: '#/components/schemas/BatchError'
                        description: 'Lista los errores producidos en cada una de las líneas del fichero. Si no hay ningún error, esta clave no se devuelve.'
                        x-description-i18n:
                          eng: 'Lists the errors occurred in each line of the file. If there are no errors, this key will not be returned.'
          description: Bad Request
        '422':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Unprocessable Entity
                    code: 422
                    details: 'Invalid header: missing header: amount'
              schema:
                $ref: '#/components/schemas/ResponseKO'
          description: Unprocessable Entity
      summary: Fichero de pagos
      description: Encola un fichero de pagos en batch.
      x-description-i18n:
        eng: Queues a payment batch file.
      x-summary-i18n:
        eng: Payments file
  /batch/refunds:
    post:
      operationId: batch-refunds-file
      tags:
        - Operaciones en lote
        - Batch operations
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                data:
                  type: string
                  description: Fichero CSV codificado en base64
                  x-description-i18n:
                    eng: CSV file encoded in base64.
                execute_at:
                  type: string
                  description: 'Fecha a partir de la cual se procesará el fichero. Si no se especifica esta fecha, el fichero se encolará para su procesado en el momento del envío'
                  nullable: true
                  x-description-i18n:
                    eng: 'Date after which the file will be processed. If this date is not specified, the file will be queued for processing as soon as it is uploaded.'
                filename:
                  type: string
                  description: Nombre del fichero bajo el que se agruparán las devoluciones enviadas.
                  x-description-i18n:
                    eng: Name of the file under which the refunds will be grouped.
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
              example:
                data: T1JERVJfVVVJRCxBTU9VTlQKMjY3Njk3NjMtQTJDOS00QUI4LTgwRDQtOTVERDgyNEUzNzVBLDEKMjY3Njk3NjMtQTJDOS00QUI4LTgwRDQtOTVERDgyNEUzNzVBLDIKMjY3Njk3NjMtQTJDOS00QUI4LTgwRDQtOTVERDgyNEUzNzVBLDMyMjIyCg==
                execute_at: '2017-11-11 11:11:11'
                filename: test.csv
                signature: 121149a0ba5361191d740fa898784a8b
              required:
                - signature
                - filename
                - data
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    code: 200
                    current_time: '2017-10-26T17:28:06+0200'
                    errors:
                      - line: 13
                        msg: Invalid card
                    message: OK
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/BatchError'
                    description: 'Lista los errores producidos en cada una de las líneas del fichero. Si no hay ningún error, esta clave no se devuelve.'
                    x-description-i18n:
                      eng: 'Lists the errors occurred in each line of the file. If there are no errors, this key will not be returned.'
          description: OK
        '400':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Bad Request
                    code: 400
                    errors:
                      - line: 1
                        msg: '<amount> parameter is not numeric. Ex: 100 for 1.00 €'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseKO'
                  - $ref: '#/paths/~1batch~1refunds/post/responses/200/content/application~1json/schema'
          description: Bad Request
        '422':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Unprocessable Entity
                    code: 422
                    details: 'Invalid header: missing header: amount'
              schema:
                $ref: '#/components/schemas/ResponseKO'
          description: Unprocessable Entity
      summary: Fichero de devoluciones
      description: Encola un fichero de devoluciones en batch.
      x-description-i18n:
        eng: Queues a refund batch file.
      x-summary-i18n:
        eng: Refunds file
  /bts/account-types-payment-agents:
    post:
      operationId: bts-payment-agent-account-types
      tags:
        - UNNAMED
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                country_cd:
                  type: string
                  description: Código alpha 3 del país.
                currency_cd:
                  type: string
                  description: Código alpha 3 de la moneda.
                pay_agent_cd:
                  type: string
                  description: Código del payment agent.
                service_uuid:
                  type: string
                signature:
                  type: string
              example:
                country_cd: MEX
                currency_cd: MXP
                pay_agent_cd: EK6
                service_uuid: 60A1F4C0-CC58-47A9-A0B9-868F9EF29045
                signature: 121149a0ba5361191d740fa898784a8b
              required:
                - signature
                - service_uuid
                - pay_agent_cd
                - country_cd
                - currency_cd
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    accounts:
                      - ACCOUNT_NUMBER
                      - BUSINESS
                      - ACCOUNT_CLABE
                      - CARD_NUMBER
                      - INTEREST_CHECKING
                      - MONEY_MARKET
                      - MOBILE_PHONE_NUMBER
                      - NOT_USED_FOR_THIS_BANK
                      - PERSONAL
                      - REGULAR_CHECKING
                      - SAVING_ACCOUNT
                    code: 200
                    current_time: '2020-02-24T10:01:24+0100'
                    message: OK
              schema:
                type: object
                properties:
                  accounts:
                    type: array
                    description: Tipos de cuenta.
          description: OK
      summary: Obtener tipos de cuenta por payment agent
      description: Obtener tipos de cuenta por payment agent
  /bts/branches:
    post:
      operationId: bts-get-branches
      tags:
        - UNNAMED
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                pay_agent_cd:
                  type: string
                  description: Código del payment agent.
                service_uuid:
                  type: string
                signature:
                  type: string
              example:
                pay_agent_cd: EK6
                service_uuid: 60A1F4C0-CC58-47A9-A0B9-868F9EF29045
                signature: 121149a0ba5361191d740fa898784a8b
              required:
                - signature
                - service_uuid
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    branches:
                      - pay_agent_address: 'PALACIO NACIONAL LOTE 65 66, METROPOLITANA 2A SECC '
                        pay_agent_branch_ds: BA PRESTA PRENDA PALACIO NACIONAL NEZA
                        pay_agent_branch_sd: '5411'
                        pay_agent_cd: EK6
                        pay_agent_city: CIUDAD NEZAHUALCOYOTL
                        pay_agent_country_cd: MEX
                        pay_agent_phone: +55 55 5555 555
                        pay_agent_region_sd: '1'
                        pay_agent_schedule: 'Mon to Sun:  9:00a.m - 9:00p.m.'
                        pay_agent_state_sd: MEX
                        pay_agent_zipcode: '54558'
                    code: 200
                    current_time: '2020-02-24T10:16:07+0100'
                    message: OK
              schema:
                type: object
                properties:
                  branches:
                    type: array
                    description: Sucursales del payment agent.
          description: OK
      summary: Obtener branches/sucursales
      description: Obtener branches/sucursales
  /bts/payment-agents:
    post:
      operationId: bts-get-payment-agents
      tags:
        - UNNAMED
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                service_uuid:
                  type: string
                signature:
                  type: string
              example:
                service_uuid: 60A1F4C0-CC58-47A9-A0B9-868F9EF29045
                signature: 121149a0ba5361191d740fa898784a8b
              required:
                - signature
                - service_uuid
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    code: 200
                    current_time: '2020-02-24T09:23:11+0100'
                    message: OK
                    paymentAgents:
                      - code: '001'
                        description: AGNT 1
                      - code: '003'
                        description: A3
                      - code: VWB
                        description: NAME VWB
              schema:
                type: object
                properties:
                  paymentAgents:
                    type: array
                    description: Lista de todos los payment agents del servicio.
          description: OK
      summary: Obtener payment agents
      description: Obtener payment agents
  /bts/payment-agents-payment-types:
    post:
      operationId: bts-get-payment-type-by-agent
      tags:
        - UNNAMED
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                pay_agent_cd:
                  type: string
                  description: 'Si se indica, filtra los resultados por el código del payment agent.'
                service_uuid:
                  type: string
                signature:
                  type: string
              example:
                pay_agent_cd: '001'
                service_uuid: 60A1F4C0-CC58-47A9-A0B9-868F9EF29045
                signature: 121149a0ba5361191d740fa898784a8b
              required:
                - signature
                - service_uuid
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    code: 200
                    current_time: '2020-02-21T14:55:16+0100'
                    message: OK
                    payment_types:
                      - dest_country_cd: BRA
                        dest_currency_cd: BRL
                        pay_agent_cd: '001'
                        payment_type_cd: ACC
                      - dest_country_cd: BRA
                        dest_currency_cd: BRL
                        pay_agent_cd: '003'
                        payment_type_cd: ACC
              schema:
                type: object
                properties:
                  payment_types:
                    type: array
                    description: Lista de todos los payment agents del servicio.
          description: OK
      summary: Obtener tipos de pago por payment agent
      description: Obtener tipos de pago por payment agent
  /bts/products:
    post:
      operationId: bts-get-products
      tags:
        - UNNAMED
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                payment_type_cd:
                  type: string
                  description: Tipo de pago
                service_uuid:
                  type: string
                signature:
                  type: string
              example:
                payment_type_cd: CSA
                service_uuid: 60A1F4C0-CC58-47A9-A0B9-868F9EF29045
                signature: 121149a0ba5361191d740fa898784a8b
              required:
                - signature
                - service_uuid
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    code: 200
                    current_time: '2020-02-24T10:25:50+0100'
                    message: OK
                    products:
                      - destinationCountryCode: ARG
                        destinationCurrencyCode: USD
                        directedTransactionCode: RDR
                        electronicFundsCode: NEF
                        originCountryCode: ESP
                        originCurrencyCode: EUR
                        paymentTypeCode: CSA
                        serviceCode: MTR
              schema:
                type: object
                properties:
                  products:
                    type: array
                    description: Productos del tipo de pago.
          description: OK
      summary: Obtener productos
      description: Obtener productos
  /bts/states:
    post:
      operationId: bts-get-states
      tags:
        - UNNAMED
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                country_cd:
                  type: string
                  description: Código alpha 3 del país.
                service_uuid:
                  type: string
                signature:
                  type: string
              example:
                country_cd: MEX
                service_uuid: 60A1F4C0-CC58-47A9-A0B9-868F9EF29045
                signature: 121149a0ba5361191d740fa898784a8b
              required:
                - signature
                - service_uuid
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    code: 200
                    current_time: '2020-02-24T10:08:02+0100'
                    message: OK
                    states:
                      - country_cd: MEX
                        state_cd: '999'
                        state_sd: NOT SET
                      - country_cd: MEX
                        state_cd: AGS
                        state_sd: AGUASCALIENTES
              schema:
                type: object
                properties:
                  states:
                    type: array
                    description: Estados del país.
          description: OK
      summary: Obtener estados/províncias
      description: Obtener estados/províncias
  /payment:
    post:
      operationId: generate-payment-order
      tags:
        - Pagos
        - Payments
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                amount:
                  $ref: '#/components/schemas/Plan/properties/amount'
                operative:
                  $ref: '#/components/schemas/MoToPayment/properties/operative'
                secure:
                  $ref: '#/components/schemas/Order/properties/safe'
                customer_ext_id:
                  $ref: '#/components/schemas/Customer/properties/external_id'
                  nullable: true
                service:
                  $ref: '#/components/schemas/Order/properties/service_uuid'
                  nullable: true
                currency:
                  nullable: true
                  description: Código Alpha 3 ISO 4217 de la moneda. Obligatorio si no se indica el campo `service`.
                  x-description-i18n:
                    eng: Alpha 3 ISO 4217 code of the currency. Mandatory if `service` is not provided.
                  type: string
                  example: EUR
                description:
                  $ref: '#/paths/~1charge/post/requestBody/content/application~1json/schema/properties/description'
                additional:
                  $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/additional'
                  nullable: true
                url_post:
                  $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/url_post'
                  nullable: true
                url_ok:
                  $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/url_ok'
                  nullable: true
                url_ko:
                  $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/url_ko'
                  nullable: true
                template_uuid:
                  $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/dcc_template'
                  nullable: true
                dcc_template_uuid:
                  $ref: '#/components/schemas/MoToPayment/properties/dccTemplate'
                  nullable: true
                source_uuid:
                  $ref: '#/components/schemas/TapToPay/properties/uuid'
                  nullable: true
                save_card:
                  $ref: '#/components/schemas/Card/properties/is_saved'
                  nullable: true
                reference:
                  $ref: '#/components/schemas/Order/properties/reference'
                  nullable: true
                dynamic_descriptor:
                  $ref: '#/components/schemas/Order/properties/dynamic_descriptor'
                  nullable: true
                expires_in:
                  $ref: '#/paths/~1charge/post/requestBody/content/application~1json/schema/properties/expires_in'
                  nullable: true
                extra_data:
                  $ref: '#/components/schemas/ExtraData'
                  nullable: true
              example:
                signature: 341f7de8e6fc49da8d8736473af6b03a
                amount: 100
                operative: AUTHORIZATION
                secure: true
                customer_ext_id: test
                service: 9A1BDCC8-DB30-4ED2-8523-62B330A67873
                currency: EUR
                description: 'Payment #1'
                additional: null
                url_post: 'https://my.website.com/process'
                url_ok: 'https://my.website.com/ok'
                url_ko: 'https://my.website.com/ko'
                template_uuid: 6412549E-933E-4DFE-A225-2E87FBF7623E
                dcc_template_uuid: BF418CA6-7043-4864-B36F-F02C2CF2B76B
                source_uuid: null
                save_card: true
                reference: '50620'
                dynamic_descriptor: PNP*NombreComercio
                expires_in: 3600
                extra_data:
                  cof:
                    reason: OTHER
                  checkout:
                    uuid: 4acae331-1ade-46f9-8159-8e7715145e0a
                    payment_methods:
                      - PAYMENT_CARD
                      - BIZUM
                    default_payment_method: PAYMENT_CARD
                    customization:
                      theme_type: DARK
                      font: Sans Serif
                      description: Checkout with a black background color
                      payment_details:
                        order_number: '632863'
              required:
                - signature
                - amount
                - operative
                - secure
                - description
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-28T15:29:49+0100'
                    order:
                      uuid: 96A59A8B-2FCC-4306-92D8-7EA8712BAE5C
                      created: '2021-12-28T15:29:49+0100'
                      created_from_client_timezone: '2021-12-28T16:29:49+0200'
                      amount: 1
                      currency: 978
                      paid: false
                      status: CREATED
                      safe: true
                      refunded: 0
                      additional: ''
                      service: CREDORAX
                      service_uuid: 9A1BDCC8-DB30-4ED2-8523-62B330A67873
                      customer: test
                      cof_txnid: null
                      transactions: []
                      token: dd27da7cc018f5daf85d426e2d72bb3207173a057ac0f5164a8bec9dd2286d1f64e25eb50ec68e7c37d4bf54236a014e7f2aa65834b42678bde5d882b2217fd0
                      ip: null
                      urls:
                        payment_card: 'https:\/\/api.paylands.com\/v1\/sandbox\/payment\/process\/dd27da7cc018f5daf85d426e2d72bb3207173a057ac0f5164a8bec9dd2286d1f64e25eb50ec68e7c37d4bf54236a014e7f2aa65834b42678bde5d882b2217fd0'
                        bizum: 'https:\/\/api.paylands.com\/v1\/sandbox\/payment\/bizum\/dd27da7cc018f5daf85d426e2d72bb3207173a057ac0f5164a8bec9dd2286d1f64e25eb50ec68e7c37d4bf54236a014e7f2aa65834b42678bde5d882b2217fd0'
                        3ds_tokenized: 'https:\/\/api.paylands.com\/v1\/sandbox\/payment\/tokenized\/dd27da7cc018f5daf85d426e2d72bb3207173a057ac0f5164a8bec9dd2286d1f64e25eb50ec68e7c37d4bf54236a014e7f2aa65834b42678bde5d882b2217fd0'
                      reference: null
                      dynamic_descriptor: null
                      threeds_data: null
                    client:
                      uuid: 42B8CF56-A7D7-4D4A-8349-4E27263CB2D5
                    extra_data:
                      checkout:
                        uuid: 4acae331-1ade-46f9-8159-8e7715145e0a
                        customization:
                          theme_type: DARK
                          font: Sans Serif
                          description: Checkout with a black background color
                          payment_details:
                            order_number: '632863'
                        payment_methods:
                          - PAYMENT_CARD
                          - BIZUM
                        default_payment_method: PAYMENT_CARD
                    validation_hash: 5fb245ebd2bea93d38212c7cd9a74ad18cdbc4036cc674d225bead28fc784f90
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      order:
                        $ref: '#/components/schemas/Order'
                      client:
                        $ref: '#/components/schemas/Client'
                      extra_data:
                        $ref: '#/components/schemas/ExtraData'
                        nullable: true
                required:
                  - order
                  - client
          description: OK
        '409':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Conflict
                    code: 409
                    details: Duplicate reference
              schema:
                required:
                  - message
                  - code
                  - details
                properties:
                  message:
                    type: string
                    description: Conflict
                    x-description-i18n:
                      eng: Conflict
                  code:
                    type: number
                    description: '409'
                    x-description-i18n:
                      eng: '409'
                  details:
                    type: string
                    description: Mensaje de error.
                    x-description-i18n:
                      eng: Error message.
                type: object
          description: Referencia duplicada
          x-description-i18n:
            eng: Duplicate reference
      summary: Generar Orden de pago
      description: Generar Orden de pago
      x-description-i18n:
        eng: 'This endpoint generates a payment order. It does not make the payment, just initializes all required parameters for a future payment.'
      x-summary-i18n:
        eng: Payment order
  /payment/send:
    post:
      operationId: send-payment-order
      tags:
        - Pagos
        - Payments
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                order_uuid:
                  $ref: '#/components/schemas/Order/properties/uuid'
                destination:
                  type: string
                  description: La dirección de email o el número móvil al que se le enviará la orden de pago.
                  x-description-i18n:
                    eng: The email address or mobile number to which the payment order is to be sent.
                subject:
                  type: string
                  description: Título del mensaje.
                  x-description-i18n:
                    eng: Message title.
                template_uuid:
                  $ref: '#/components/schemas/MoToPayment/properties/moToTemplate'
                  nullable: true
                language:
                  $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/language'
                  nullable: true
              example:
                signature: 341f7de8e6fc49da8d8736473af6b03a
                order_uuid: 1F405EA3-9798-42A6-9E87-BD347EF67F55
                destination: name@example.com
                subject: Título del mensaje
                template_uuid: 6412549E-933E-4DFE-A225-2E87FBF7623E
                language: es
              required:
                - signature
                - order_uuid
                - destination
                - subject
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-28T13:51:27+0100'
                    delivery: true
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      delivery:
                        description: Indica si el mensaje fue entregado o no.
                        x-description-i18n:
                          eng: Indicates whether the message was delivered or not.
                        properties:
                          delivery:
                            type: boolean
                        required:
                          - delivery
                        type: boolean
          description: OK
        '400':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Bad Request
                    code: 400
                    details: Invalid email or phone number format
              schema:
                $ref: '#/components/schemas/ResponseKO'
          description: Bad Request
        '404':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Not Found
                    code: 404
                    details: Order not found
              schema:
                $ref: '#/components/schemas/ResponseKO'
          description: Not Found
        '410':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Gone
                    code: 410
                    details: Order destination has already been sent
              schema:
                $ref: '#/components/schemas/ResponseKO'
          description: Gone
        '500':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Internal Server Error
                    code: 500
                    details: Error rendering the template
              schema:
                $ref: '#/components/schemas/ResponseKO'
          description: Internal Server Error
      summary: Enviar enlace de orden de pago por SMS/Email
      description: 'Este endpoint envía el enlace de la orden de pago por SMS o correo electrónico a su destinatario, según proceda.'
      x-description-i18n:
        eng: This endpoint sends the payment link by SMS or email to the destination.
      x-summary-i18n:
        eng: Send payment order link by SMS/Mail
  /payment/ivr:
    post:
      operationId: generate-ivr-payment
      tags:
        - UNNAMED
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    code: 200
                    message: OK
                    current_time: '2018-04-18T09:10:41+0200'
                    payment:
                      uuid: 818431F0-F23F-47EA-A854-BD01E8593E2E
                      status: PBC-IVR0000
              schema:
                type: object
                properties:
                  payment:
                    type: object
                    properties:
                      uuid:
                        type: string
                        description: Identificador único del pago.
                      status:
                        type: string
                        description: Identificador del estado de la operación.
                    required:
                      - uuid
                      - status
                required:
                  - payment
          description: OK
      summary: Generar pago IVR
      description: 'Al generar pago IVR, el usuario recibirá una llamada automatizada que recogerá sus detalles de pago de manera segura.'
  /charge:
    post:
      operationId: one-step-payment
      tags:
        - Pagos
        - Payments
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                amount:
                  $ref: '#/components/schemas/Plan/properties/amount'
                operative:
                  $ref: '#/components/schemas/MoToPayment/properties/operative'
                secure:
                  $ref: '#/components/schemas/Order/properties/safe'
                customer_ext_id:
                  $ref: '#/components/schemas/Customer/properties/external_id'
                service:
                  $ref: '#/components/schemas/Order/properties/service_uuid'
                description:
                  type: string
                  description: 'Descripción del pago. Para los pagos mediante transferencia bancaria, el concepto que verá el usuario será el indicado en este campo.'
                  x-description-i18n:
                    eng: Payment description. This field is what users will see on their bank statement in bank transfer transactions.
                additional:
                  $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/additional'
                  nullable: true
                url_post:
                  $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/url_post'
                  nullable: true
                url_ok:
                  $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/url_ok'
                  nullable: true
                url_ko:
                  $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/url_ko'
                  nullable: true
                template_uuid:
                  $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/dcc_template'
                  nullable: true
                dcc_template_uuid:
                  $ref: '#/components/schemas/MoToPayment/properties/dccTemplate'
                  nullable: true
                card_holder:
                  $ref: '#/components/schemas/Card/properties/holder'
                card_pan:
                  type: string
                  example: 411111******1111
                  description: Número de la tarjeta.
                  x-description-i18n:
                    eng: Primary account number (PAN).
                card_expiry_month:
                  $ref: '#/components/schemas/Card/properties/expire_month'
                card_expiry_year:
                  $ref: '#/components/schemas/Card/properties/expire_year'
                card_additional:
                  $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/additional'
                  nullable: true
                card_cvv:
                  $ref: '#/paths/~1payment~1moto/post/requestBody/content/application~1json/schema/properties/card_cvv'
                  nullable: true
                customer_ip:
                  $ref: '#/paths/~1payment~1direct/post/requestBody/content/application~1json/schema/properties/customer_ip'
                  nullable: true
                reference:
                  $ref: '#/components/schemas/Order/properties/reference'
                  nullable: true
                dynamic_descriptor:
                  $ref: '#/components/schemas/Order/properties/dynamic_descriptor'
                  nullable: true
                expires_in:
                  nullable: true
                  type: number
                  default: 600
                  minimum: 600
                  maximum: 31536000
                  description: Tiempo en segundos desde que se crea la orden hasta que expira.
                  x-description-i18n:
                    eng: Time in seconds since the order is created until it expires.
                threeds_data:
                  nullable: true
                  type: object
                  properties:
                    version:
                      $ref: '#/components/schemas/Order/properties/threeds_data/properties/version'
                    trans_status:
                      enum:
                        - 'Y'
                        - A
                        - C
                        - D
                        - R
                        - 'N'
                        - U
                      type: string
                    eci:
                      enum:
                        - '00'
                        - '01'
                        - '02'
                        - '05'
                        - '06'
                        - '07'
                      type: string
                    ds_trans_id:
                      nullable: true
                      type: string
                      description: identificador de la transacción 3DS cuando se utiliza una versión V2.
                      x-description-i18n:
                        eng: 3DS transaction identifier when using a V2 version.
                  description: Campo que contiene la información procedente del comercio si ha indicado una autenticación mediante MPI/3DS externo.
                  x-description-i18n:
                    eng: Field containing the information from the merchant if you have indicated authentication via External MPI/3DS.
                dpan_data:
                  nullable: true
                  type: object
                  properties:
                    cryptogram:
                      nullable: true
                      type: string
                      description: Criptograma que autentica los datos de tarjeta.
                      x-description-i18n:
                        eng: Cryptogram authenticating the card data details.
                    eci:
                      nullable: true
                      enum:
                        - '00'
                        - '01'
                        - '02'
                        - '05'
                        - '06'
                        - '07'
                      type: string
                      description: El valor del ECI del criptograma asociado a la tarjeta.
                      x-description-i18n:
                        eng: The ECI value of the cryptogram associated with the card.
                    origin:
                      nullable: true
                      type: string
                      description: Identifica cómo se obtuvo la tarjeta.
                      default: null
                      x-description-i18n:
                        eng: Identifies how the card was obtained.
                      enum:
                        - GOOGLE_PAY
                        - APPLE_PAY
                    last4:
                      allOf:
                        - $ref: '#/components/schemas/Card/properties/last4'
                      nullable: true
                      type: string
                    flow:
                      nullable: true
                      type: string
                      description: Indica si la obtención de la tarjeta se realizó a través del navegador o una app móvil.
                      default: APP
                      x-description-i18n:
                        eng: Indicates whether the card was obtained through the browser or a mobile app.
                      enum:
                        - APP
                        - WEB
                  description: Campo que contiene la información procedente del comercio si ha indicado una autenticación mediante MPI/3DS externo.
                  x-description-i18n:
                    eng: Field containing the information from the merchant if you have indicated authentication via External MPI/3DS.
                extra_data:
                  $ref: '#/components/schemas/ExtraData'
                  nullable: true
              example:
                signature: 341f7de8e6fc49da8d8736473af6b03a
                amount: 100
                operative: AUTHORIZATION
                secure: false
                customer_ext_id: test
                service: 9A1BDCC8-DB30-4ED2-8523-62B330A67873
                description: 'Payment #1'
                additional: null
                url_post: 'https://my.website.com/process'
                url_ok: 'https://my.website.com/ok'
                url_ko: 'https://my.website.com/ko'
                template_uuid: 6412549E-933E-4DFE-A225-2E87FBF7623E
                dcc_template_uuid: BF418CA6-7043-4864-B36F-F02C2CF2B76B
                card_holder: Jose
                card_pan: '4761739000060016'
                card_expiry_month: '12'
                card_expiry_year: '21'
                card_additional: Card additional
                card_cvv: '123'
                customer_ip: 127.0.0.1
                reference: '50620'
                dynamic_descriptor: PNP*NombreComercio
                threeds_data:
                  version: 2.2
                  trans_status: 'Y'
                  eci: 5
                  cavv: 012fE34RTD34567AkFlR98Ol65Fr
                  ds_trans_id: ba2fad84-2a9f-4a5a-8ca6-9eb74f7908ac
                expires_in: 3600
              required:
                - signature
                - amount
                - operative
                - secure
                - customer_ext_id
                - service
                - description
                - card_holder
                - card_pan
                - card_expiry_month
                - card_expiry_year
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-28T13:24:26+0100'
                    order:
                      uuid: 495BEE1F-7D00-4E4B-9511-F1665118932F
                      created: '2021-12-28T13:24:22+0100'
                      created_from_client_timezone: '2021-12-28T14:24:22+0200'
                      amount: 100
                      currency: 978
                      paid: true
                      status: SUCCESS
                      safe: false
                      refunded: 0
                      additional: ''
                      service: CREDORAX
                      service_uuid: 9A1BDCC8-DB30-4ED2-8523-62B330A67873
                      customer: test
                      cof_txnid: null
                      transactions:
                        - uuid: 595E1818-A4E3-4A16-92A5-1DC6988162CC
                          created: '2021-12-28T13:24:22+0100'
                          created_from_client_timezone: '2021-12-28T14:24:22+0200'
                          operative: AUTHORIZATION
                          amount: 100
                          authorization: '810551'
                          processor_id: XZZ7281d1a563df2A6ADSYOOMDF6FGPP
                          status: SUCCESS
                          error: NONE
                          source:
                            object: CARD
                            uuid: 6C5D535E-1B5B-4665-8A32-08ADF2A680B7
                            type: ''
                            token: f41fdb5764efad821b2527aeaaf236e29d010771ea5a73ba26044526ec934f1100d8fc6930910ccd634ecc81c0aa7a1b3b721a739f2bac8aa4eedc0d529806d8
                            brand: VISA
                            country: US
                            holder: Jose
                            bin: 476173
                            last4: '0016'
                            is_saved: true
                            expire_month: '12'
                            expire_year: '21'
                            additional: Card additional
                            bank: ''
                            prepaid: ''
                            validation_date: '2021-12-28 13:24:25'
                            creation_date: '2021-12-28 13:24:21'
                            brand_description: null
                          antifraud: null
                          device: null
                          error_details: null
                      token: d5d74652f635bf527b3dab4a963779bc3c436e938a5f10f5a345659bb2609cb51706abef83cd1eb2e2658800a9b145562537d833986fa38a1cbc79c157ad63fe
                      ip: 127.0.0.1
                      reference: null
                      dynamic_descriptor: null
                      threeds_data: null
                    client:
                      uuid: 42B8CF56-A7D7-4D4A-8349-4E27263CB2D5
                    validation_hash: 88e0b4e4ca902beb6df70693a0a94164be0485bab865dc168e3a1bf6bf5a71f7
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      order:
                        $ref: '#/components/schemas/Order'
                      client:
                        $ref: '#/components/schemas/Client'
                      extra_data:
                        $ref: '#/components/schemas/ExtraData'
                        nullable: true
                required:
                  - order
                  - client
          description: OK
        '303':
          content:
            application/json:
              examples:
                response:
                  value:
                    code: 303
                    details: 'https://api.paylands.com/v1/sandbox/payment/tokenized/f4aab068d7cbc5404c448e442447d53fc44f4330ef374a218c8f4bbd3f02d7704121d2d24eeab4aad3210765719767001153f3322db7c45cd8902dfa4108f58d'
                    message: See Other
              schema:
                required:
                  - message
                  - code
                  - details
                properties:
                  message:
                    type: string
                    description: Valor fijo "See Other".
                    x-description-i18n:
                      eng: Fixed value "See Other".
                  code:
                    type: number
                    description: Código de respuesta fijo 303.
                    x-description-i18n:
                      eng: Fixed response code 303.
                  details:
                    type: string
                    description: Enlace desde el cual el usuario podrá finalizar el pago mediante 3D Secure.
                    x-description-i18n:
                      eng: Link to be sent to the customer to finalize the payment through 3D Secure.
                type: object
          description: Respuesta cuando el pago debe ser finalizado por el usuario de forma segura.
          x-description-i18n:
            eng: Response when the payment cannot finalize without the customer's intervention.
      summary: Pago en un sólo paso
      description: |-
        Permite generar una orden de cobro, almacenar la tarjeta y realizar el pago en una sola petición. Sólo usable por clientes PCI.

        Si el pago es no seguro y se proporciona el `TraceID` en el campo `extra_data.cof.txnid`, se realizará un pago directo (MIT).

        Si el pago es seguro se devolverá el enlace al pago tokenizado por 3DS para que el usuario finalice el pago de forma segura. En caso de que el antifraude detecte riesgo, se devolverá un enlace para que el usuario finalice el pago tokenizado por 3DS.

        Si se envían datos de tarjetas dinámicas (DPAN) como aquellas obtenidas a través de Google Pay, Apple Pay o VTS/MDES, es obligatorio enviar los campos `cryptogram` y `eci` en el objeto `dpan_data` si se trata de una CIT. En pagos MIT, basta con indicar los datos de la tarjeta y el `TraceID`.
      x-description-i18n:
        eng: |-
          This endpoint generates a payment order, stores the card and executes the payment on a single request. It is only usable if you are PCI compliant.

          If the payment is not secure, the order will be paid through a direct payment (MIT).

          If the payment is secure, a link will be returned in order for the customer to finalize the tokenized payment through 3D Secure. In case the antifraud detects risk, a link will be returned in order for the customer to finalize the tokenized payment through 3D Secure.

          If dynamic card data (DPAN) is sent, such as that obtained through Google Pay, Apple Pay, or VTS/MDES, it is mandatory to send the `cryptogram` and `eci` fields in the `dpan_data` object if it is a CIT. For MIT payments, it is enough to provide the card details and the `TraceID`.
      x-summary-i18n:
        eng: Single-step payment
  /client:
    post:
      operationId: create-merchant
      tags:
        - Comercios
        - Merchants
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                name:
                  type: string
                  description: Nombre del comercio.
                  x-description-i18n:
                    eng: Name of the merchant.
                email:
                  type: string
                  description: Email.
                  x-description-i18n:
                    eng: Email.
                timezone:
                  type: boolean
                  description: Zona horaria del comercio.
                  x-description-i18n:
                    eng: Merchant timezone.
                autorecover_transactions:
                  type: boolean
                  description: Recuperar automáticamente transacciones pendientes.
                  x-description-i18n:
                    eng: Automatically retrieve pending transactions.
                resend_failed_notifications:
                  type: boolean
                  description: Marcar a true para reenviar peticiones al comercio que no hayan devuelto un 200 a Paylands.
                  x-description-i18n:
                    eng: Set to true to forward requests to the merchant that have not returned a 200 to Paylands.
                category:
                  enum:
                    - ACCOUNTING_SERVICES
                    - ADULT
                    - ALCOHOL
                    - CBD
                    - CELL_PHONE_SALES
                    - CHARITY
                    - COMPUTING_AND_HARDWARE
                    - COMPUTING_SERVICES
                    - CROWDFUNDING
                    - CROWDLENDING
                    - CRYPTO
                    - CURRICULUMS
                    - DATING_AND_SCORT_SERVICES
                    - E_COMMERCE
                    - ELECTRONIC_CIGARETTE
                    - EVENTS_SALES
                    - FOREX_WITH_LICENSE
                    - FOREX_WITHOUT_LICENSE
                    - GAMBLING_WITH_LICENSE
                    - GAMBLING_WITHOUT_LICENSE
                    - GAMING
                    - HOSTING_SERVICES
                    - HOTELS
                    - JEWELRY
                    - LEGAL_SERVICES
                    - MARKETPLACE
                    - MOBILE_RECHARGE
                    - MONEY_REMMITANCE
                    - NUTRITION
                    - PAYDAY_LOANS
                    - TOBACCO
                    - TOUR_OPERATOR_OTAS
                    - VOUCHERS
                    - WALLETS
                  description: Categoría del comercio.
                  x-description-i18n:
                    eng: Category merchant.
                  type: string
                mcc:
                  type: string
                  minLength: 4
                  maxLength: 4
                  description: 'Código de categoría del comercio, debe contener cuatro números.'
                  x-description-i18n:
                    eng: 'Merchant Category Code, must contain four numbers.'
                parent_uuid:
                  type: string
                  nullable: true
                  description: Indica el padre del comercio si se desea crear bajo un cliente distinto al que realiza la petición.
                  x-description-i18n:
                    eng: Indicates the parent of the merchant if you want to create it under another client than the one making the request.
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                name: Client Name
                email: email@email.com
                timezone: Europe/Madrid
                autorecover_trasactions: false
                resend_failed_notifications: false
                category: HOTELS
                mcc: '5732'
                parent_uuid: 8dc780e8-c311-4791-a47f-c1a272ffbb87
              required:
                - signature
                - name
                - email
                - timezone
      servers:
        - url: 'https://api.paylands.com/v1/sandbox'
          description: Sólo se pueden crear comercios en el entorno de Sandbox
          x-description-i18n:
            eng: Merchants can only be created in Sandbox environment
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2017-01-12T09:12:58+0100'
                    client:
                      uuid: 962C3723-A0BC-4911-8F0F-0CCE963C5218
                      created: '2024-05-08T10:21:09+0200'
                      name: Client Name
                      email: email@email.com
                      timezone: Europe\Madrid
                      autorecover_transactions: false
                      resend_failed_notifications: false
                      is_pci: false
                      is_deleted: false
                      category: HOTELS
                      mcc: '5732'
                      address: null
                      phone_number: null
                      api_key: 1d5f130ad27245c2b66ce5a90f0d3a87
                      signature: 7OyXl3zup9gijNRrhuUKX3ub
                      services: null
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
          description: OK
        '403':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Forbidden
                    code: 403
                    details: null
              schema:
                $ref: '#/components/schemas/ResponseKO'
          description: Forbidden
        '404':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Not Found
                    code: 404
                    details: Client not found
              schema:
                $ref: '#/components/schemas/ResponseKO'
          description: Not Found
      summary: Crear
      description: 'Mediante este método, podemos crear un nuevo comercio bajo el cliente indicado en parent_uuid. Si no se incluye parent_uuid o se indica a nulo, el comercio se creará por defecto bajo el cliente al que pertenecen las credenciales.'
      x-description-i18n:
        eng: 'Using this method, we can create a new business under the customer indicated in parent_uuid. If parent_uuid is not included or set to null, the merchant will be created by default under the client to which the credentials belong.'
      x-summary-i18n:
        eng: Create
  '/client/{uuid}/promote':
    post:
      operationId: promote-merchant
      tags:
        - Comercios
        - Merchants
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: uuid
          in: path
          required: true
          example: 1F405EA3-9798-42A6-9E87-BD347EF67F55
          schema:
            type: string
          description: UUID del cliente
          x-description-i18n:
            eng: Client's UUID
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
              example:
                signature: 121149a0ba5361191d740fa898784a8b
              required:
                - signature
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2024-01-12T09:12:58+0100'
                    uuid: 962C3723-A0BC-4911-8F0F-0CCE963C5218
                    api_key: 17CFBB43E7D4417BB532370C2C5B499F
                    signature: 21c49b786c21b89k06782mjv1a40bc21
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      uuid:
                        $ref: '#/components/schemas/Client/properties/uuid'
                      api_key:
                        type: string
                        description: Credencial principal del comercio utilizada en todas las peticiones a la API
                        x-description-i18n:
                          eng: Merchant's main credential. It's mandatory in all API requests.
                      signature:
                        $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
          description: OK
        '403':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Forbidden
                    code: 403
                    details: null
              schema:
                $ref: '#/components/schemas/ResponseKO'
          description: Forbidden
        '404':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Not Found
                    code: 404
                    details: Client not found
              schema:
                $ref: '#/components/schemas/ResponseKO'
          description: Not Found
        '409':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Conflict
                    code: 409
                    details: Client already exists in production
              schema:
                $ref: '#/components/schemas/ResponseKO'
          description: Invalid client
      summary: Pasar a producción
      description: Este endpoint permite activar un comercio en producción. El comercio debe existir en sandbox.
      x-description-i18n:
        eng: 'This endpoint is used to promote a merchant, which only exists in sandbox environment, to the production environment.'
      x-summary-i18n:
        eng: Promote
  /user:
    post:
      operationId: create-user
      tags:
        - Comercios
        - Merchants
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  type: string
                  description: Firma que acompaña a la API key. Requerida en todas las peticiones POST/PUT/PATCH/DELETE.
                  x-description-i18n:
                    eng: Signature paired with the API key. Required in all POST/PUT/PATCH/DELETE requests.
                email:
                  $ref: '#/components/schemas/Paypal/properties/email'
                username:
                  type: string
                  description: Nombre del usuario
                  x-description-i18n:
                    eng: User's name.
                language:
                  type: string
                  enum:
                    - ES
                    - EN
                    - PT
                  description: Idioma por defecto en que se mostrará el panel al usuario
                  x-description-i18n:
                    eng: User's default language that will be used when accessing the control panel
                environment:
                  type: string
                  enum:
                    - SANDBOX
                    - PRODUCTION
                  description: Entorno por defecto donde accederá el usuario.
                  x-description-i18n:
                    eng: User's default environment.
                send_email_with_credentials:
                  type: boolean
                  description: 'Indica si, tras crear el usuario, se le enviará un mail con los datos de acceso al panel'
                  x-description-i18n:
                    eng: Whether an email containing login details must be sent or not
                group:
                  type: string
                  enum:
                    - MANAGER
                    - USER
                    - VIEWER
                    - MANUAL PAYMENT
                    - BATCH
                    - PAYMENTS
                  description: |-
                    * MANAGER: acceso a todas las secciones de visualización y configuración
                    * USER: puede ver las operaciones, terminales y servicios
                    * VIEWER: puede ver las operaciones y pagos MoTo
                    * MANUAL PAYMENT: puede crear pagos manuales y ver las operaciones
                    * BATCH: tiene acceso a los pagos batch (creación y listado)
                    * PAYMENTS: acceso a todos los tipos de pago desde el panel, visualización de las órdenes de pago y listado de tarjetas (sin datos sensibles)
                  x-description-i18n:
                    eng: |-
                      * MANAGER: has access to all sections, including reporting and configuration ones
                      * USER: has access to transactions, terminals and payment services
                      * VIEWER: can visualize transactions and MoTo payments
                      * MANUAL PAYMENT: can execute manual payments and visualize transactions
                      * BATCH: can process and list batch payments
                      * PAYMENTS: has access to all transactions and cards list (no sensitive data is exposed)
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                email: email@email.com
                username: John
                language: ES
                environment: SANDBOX
                send_email_with_credentials: false
                group: MANAGER
              required:
                - signature
                - email
                - username
                - language
                - environment
                - group
                - send_email_with_credentials
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2017-01-12T09:12:58+0100'
                    user:
                      uuid: 962C3723-A0BC-4911-8F0F-0CCE963C5218
                      client_production: 54F8360C-330A-4411-BE21-43291F8C4B32
                      client_sandbox: 54F8360C-330A-4411-BE21-43291F8C4B32
                      created: '2024-06-07T11:07:47+0200'
                      username: John
                      email: johndoe@test.com
                      language: ES
                      status: ACTIVE
                    password: Tpdle7ew7Y
                    email: johndoe@test.com
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
          description: OK
        '400':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Bad Request
                    code: 400
                    details: Key <email/username/...> must be set
              schema:
                $ref: '#/components/schemas/ResponseKO'
          description: There's a missing or invalid field in the request
        '403':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Forbidden
                    code: 403
                    details: null
              schema:
                $ref: '#/components/schemas/ResponseKO'
          description: Forbidden
        '409':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Conflict
                    code: 409
                    details: 'Email already taken: ''johndoe@test.com''.'
              schema:
                $ref: '#/components/schemas/ResponseKO'
          description: The email already exists
      summary: Crear usuario con acceso al panel
      x-summary-i18n:
        eng: Create a dashboard user
      description: Este método permite crear un usuario con acceso al panel para ver las operaciones del comercio.
      x-description-i18n:
        eng: 'By using this endpoint, you can create a dashboard user with access to visualize merchant''s transactions.'
  /service:
    post:
      operationId: create-service
      tags:
        - Servicios
        - Services
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                name:
                  type: string
                  description: Nombre del servicio.
                  x-description-i18n:
                    eng: Service name.
                type:
                  $ref: '#/components/schemas/Service/properties/type'
                dcc_mode:
                  $ref: '#/components/schemas/Service/properties/dcc_mode'
                is_dcc_allowed:
                  type: boolean
                  description: Permite el dcc. Solo aplica para servicios de REDSYS.
                  x-description-i18n:
                    eng: Allows dcc. Only applies to REDSYS services..
                terminal_uuid:
                  type: string
                  description: Terminal asociado al servicio.
                  x-description-i18n:
                    eng: Terminal associated with the service.
                parent_uuid:
                  type: string
                  description: Este UUID indica el comercio bajo el cual se creará el servicio.
                  x-description-i18n:
                    eng: This UUID belongs to the merchant that will own the service.
                mcc:
                  type: string
                  description: 4 dígitos indicando la categoría del comercio
                  x-description-i18n:
                    eng: Merchant Category Code in a 4 digit string format
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                name: Service name
                type: REDSYSPSD2
                dcc_mode: LOCAL
                is_dcc_allowed: false
                terminal_uuid: null
                parent_uuid: null
              required:
                - signature
                - name
                - type
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2017-01-12T09:12:58+0100'
                    service:
                      name: Service name
                      type: REDSYSPSD2
                      enabled: true
                      terminal: null
                      created: '2024-05-07T14:10:35+0200'
                      uuid: 60B1A13D-10A5-40CE-A013-2CFCB91E659F
                      dcc_allowed: false
                      dcc_mode: LOCAL
                      dynamic_descriptor: null
                      referential_integrity: null
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
          description: OK
      summary: Crear
      description: 'Mediante este método, podemos crear un nuevo servicio. Si no se indica un terminal, el servicio se quedará pendiente.'
      x-description-i18n:
        eng: 'Using this method, we can create a new service. If a terminal is not indicated, the service will remain pending.'
      x-summary-i18n:
        eng: Create
  /terminals:
    post:
      operationId: create-terminal
      tags:
        - Terminales
        - Terminals
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                currency_code:
                  type: string
                  description: 'Código de 3 letras asociado a la moneda. Por ejemplo: EUR.'
                  x-description-i18n:
                    eng: 'Currency''s alpha3 code. For example: EUR.'
                type:
                  $ref: '#/components/schemas/Service/properties/type'
                description:
                  type: string
                  description: Breve descripción asociada al terminal.
                  x-description-i18n:
                    eng: Short text associated to the terminal
                code:
                  type: string
                  description: 'Código numérico asociado a algunos terminales. Por ejemplo, en el caso de Redsys este código sería el FUC.'
                  x-description-i18n:
                    eng: 'Numeric code associated to virtual mids. For example, for Redsys'' terminals it would be the FUC code.'
                parent_uuid:
                  type: string
                  description: Este UUID indica el comercio bajo el cual se creará el terminal.
                  x-description-i18n:
                    eng: This UUID belongs to the merchant that will own the terminal.
              required:
                - signature
                - currency_code
                - description
                - type
            examples:
              REDSYSPSD2:
                summary: Create a Redsys terminal
                value:
                  signature: 121149a0ba5361191d740fa898784a8b
                  description: Sandbox terminal for merchant1234
                  type: REDSYSPSD2
                  currency_code: EUR
                  code: '341111111'
                  parent_uuid: null
                  credentials:
                    key_secure: c421c8j2h490x2783hdnd93k1q
                    key_not_secure: 54f23c8v74528949b4mjjk3s
                    terminal_secure: '1'
                    terminal_not_secure: '2'
              CREDORAX:
                summary: Create a Credorax/Finaro/Shift4 terminal
                value:
                  signature: 121149a0ba5361191d740fa898784a8b
                  description: Sandbox terminal for merchant1234
                  type: CREDORAX
                  currency_code: EUR
                  parent_uuid: null
                  credentials:
                    merchant_id: '1234'
                    signing_api_key: yyyyy
                    sub_merchant_id: xxxx
              SIBS:
                summary: Create a SIBS terminal
                value:
                  signature: 121149a0ba5361191d740fa898784a8b
                  description: Sandbox terminal for merchant1234
                  type: SIBS
                  currency_code: EUR
                  parent_uuid: null
                  credentials:
                    client_id: b338b48c-d6c6-4899-a8ca-2814b04df469
                    terminal_id: 71024
                    entity: '51946'
                    bearer_token: JWT-like bearer token
                    tin: 487658561
                    sic: 47410
                    merchant_name: My ecommerce
                    payment_entity: Payment entity
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2025-05-06T12:58:17+0200'
                    terminal:
                      uuid: D03F5EB0-1E7A-4CA4-9F28-939F12B8BBF3
                      client_uuid: 42B8CF56-A7D7-4D4A-8349-4E27263CB2D5
                      client_name: Paylands Admin
                      type: CREDORAX
                      code: ''
                      currency_code: EUR
                      dcc_allowed: false
                      is_cof_disabled_by_default: false
                      description: Sandbox terminal for merchant1234
                      created: '2025-05-06 12:58:17'
                      acquirer: EXTERNAL
                      credentials:
                        merchant_id: '1234'
                        signing_api_key: yyyyy
                        sub_merchant_id: xxxx
                        merchant_id_amex: null
                        signing_api_key_amex: null
                        target_mid_amex: null
                        sub_merchant_phone_amex: null
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      uuid:
                        type: string
                        description: Identificador único del terminal
                        x-description-i18n:
                          eng: Terminal's unique identifier
                      client_uuid:
                        type: string
                        description: UUID del cliente al que pertenece el terminal
                        x-description-i18n:
                          eng: UUID of the merchant owning the terminal
                      client_name:
                        type: string
                        description: Nombre del cliente al que pertenece el terminal
                        x-description-i18n:
                          eng: Name of the merchant owning the terminal
                      type:
                        type: string
                        description: Nombre del proveedor/adquirente del terminal
                        x-description-i18n:
                          eng: Terminal's provider name
                      code:
                        type: string
                        description: Código asociado al terminal (solo en los casos que el tipo de terminal lo requiera)
                        x-description-i18n:
                          eng: Terminal code (only for specific terminal types)
                      currency:
                        type: number
                        deprecated: true
                        description: Identificador interno asociado a la moneda
                        x-description-i18n:
                          eng: Internal currency identifier
                      dcc_allowed:
                        type: boolean
                        description: Indica si el terminal tiene DCC activado
                        x-description-i18n:
                          eng: Whether the terminal has DCC enabled or not
                      is_cof_disabled_by_default:
                        type: boolean
                        description: Campo interno relacionado con las operaciones MIT
                        x-description-i18n:
                          eng: MIT related field
                      description:
                        type: string
                        description: Descripción asociada al terminal
                        x-description-i18n:
                          eng: Terminal's decription
                      created:
                        type: string
                        description: Fecha en la que se ha creado el terminal
                        x-description-i18n:
                          eng: 'Date when the terminal was created. Format:2032-02-14 15:29:45'
                      currency_code:
                        type: string
                        description: 'Código de 3 letras asociado a la moneda. Por ejemplo: EUR'
                        x-description-i18n:
                          eng: 'Currency''s 3 letter code. For example: EUR'
                      acquirer:
                        enum:
                          - PFS
                          - EXTERNAL
                        type: string
                        description: Indica si el terminal tiene adquirencia propia o externa
                        x-description-i18n:
                          eng: Terminal's adquirer
                      credentials:
                        type: array
                        description: Listado de campos propios del terminal en función del proveedor
                        x-description-i18n:
                          eng: Terminal's specific fields depending on its provider
          description: OK
      summary: Crear
      description: |-
        La creación de un terminal tiene unos campos comunes a todos los terminales, pero dependiendo del proveedor del terminal, se necesitará enviar, además, unos campos u otros. En el menú de la derecha, en "Request samples" existe un desplegable que muestra los campos concretos necesarios para diferentes proveedores.

        Si necesitas crear un tipo de terminal que no aparece en este listado, ponte en contacto con soporte@paylands.com para que podamos incluirlo en la documentación.
      x-description-i18n:
        eng: |-
          Terminal creation requires a few common fields for all terminal types, but also specific fields depending on the terminal provider. On the right side, the "Request Samples" section contains a dropdown including the specific fields that must be sent for different providers.

          In case you need to register a terminal type not showing there, please send an email to soporte@paylands.com so we can include it.
      x-summary-i18n:
        eng: Create
  /customer:
    post:
      operationId: create-customer
      tags:
        - Clientes
        - Customers
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                customer_ext_id:
                  $ref: '#/components/schemas/Customer/properties/external_id'
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                customer_ext_id: customer15487
              required:
                - signature
                - customer_ext_id
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2017-01-12T09:12:58+0100'
                    Customer:
                      external_id: customer15487
                      token: 55189www42efe21cc9ddad08bae7ae653b566a4142f0eb7c92487cab484fcfff249644f2f2f1b9f6b2e702a7e435e43c2c5d11f2fe68df014bd23d9e99a879afb
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      Customer:
                        properties:
                          external_id:
                            $ref: '#/components/schemas/Customer/properties/external_id'
                          token:
                            type: string
                            description: Token para utilizar en la tokenización de tarjeta.
                            x-description-i18n:
                              eng: Token to be used during the card tokenization.
                        type: object
                        required:
                          - external_id
                          - token
                    required:
                      - Customer
          description: OK
      summary: Crear
      description: 'Mediante este método se crea un nuevo cliente (customer) en el sistema, con el fin de asignarle posteriormente una tarjeta tokenizada.'
      x-description-i18n:
        eng: 'This method creates a new customer, which will be used later to associate a tokenized card.'
      x-summary-i18n:
        eng: Create
  /customer/account:
    post:
      operationId: create-customer-account
      tags:
        - Clientes
        - Customers
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                external_id:
                  $ref: '#/components/schemas/Customer/properties/external_id'
                account_type:
                  $ref: '#/components/schemas/AccountType'
                account_number:
                  $ref: '#/paths/~1customer~1account/put/requestBody/content/application~1json/schema/properties/account_number'
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                account_number: '100169168'
                account_type: ACCOUNT_NUMBER
                external_id: 12345678A
              required:
                - signature
                - external_id
                - account_type
                - account_number
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2019-11-19T15:57:46+0100'
                    customer:
                      external_id: 12345678A
                    customer_account:
                      account_number: '100169168'
                      account_type: ACCOUNT_NUMBER
                      uuid: 9B5DDCC2-24A9-4157-A56D-193EB9EF3966
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      Customer:
                        $ref: '#/components/schemas/Customer'
                      customer_account:
                        $ref: '#/paths/~1customer~1account/put/responses/200/content/application~1json/schema/allOf/1/properties/customer_account'
                    required:
                      - customer
                      - customer_account
          description: OK
      summary: Crear cuenta
      description: Mediante este método se crean los datos asociados a una cuenta bancaria de un usuario en el sistema.
      x-description-i18n:
        eng: This method creates the data associated with a user's bank account in the system.
      x-summary-i18n:
        eng: Create account
    put:
      operationId: update-customer-account
      tags:
        - Clientes
        - Customers
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                uuid:
                  type: string
                  description: Identificador de la cuenta del usuario.
                  x-description-i18n:
                    eng: Unique identifier of the user's account.
                external_id:
                  $ref: '#/components/schemas/Customer/properties/external_id'
                account_type:
                  $ref: '#/components/schemas/AccountType'
                account_number:
                  type: string
                  description: Número de cuenta bancaria.
                  x-description-i18n:
                    eng: Bank account number.
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                uuid: 9B5DDCC2-24A9-4157-A56D-193EB9EF3966
                external_id: 12345678A
                account_type: ACCOUNT_NUMBER
                account_number: '100169168'
              required:
                - signature
                - uuid
                - external_id
                - account_type
                - account_number
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2019-11-19T16:00:36+0100'
                    customer:
                      external_id: 12345678A
                    customer_account:
                      account_number: '100169168'
                      account_type: ACCOUNT_NUMBER
                      uuid: 9B5DDCC2-24A9-4157-A56D-193EB9EF3966
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      customer_account:
                        description: Cuenta bancaria del usuario.
                        x-description-i18n:
                          eng: Bank account of the customer.
                        properties:
                          uuid:
                            $ref: '#/paths/~1customer~1account/put/requestBody/content/application~1json/schema/properties/uuid'
                          external_id:
                            $ref: '#/components/schemas/Customer/properties/external_id'
                          account_type:
                            $ref: '#/components/schemas/AccountType'
                          account_number:
                            $ref: '#/paths/~1customer~1account/put/requestBody/content/application~1json/schema/properties/account_number'
                        required:
                          - uuid
                          - external_id
                          - account_type
                          - account_number
                        type: object
                    required:
                      - customer_account
          description: OK
      summary: Actualizar cuenta
      description: Mediante este método se actualizan los datos asociados a una cuenta bancaria de un usuario en el sistema.
      x-description-i18n:
        eng: This method updates the data associated with a bank account of a user in the system.
      x-summary-i18n:
        eng: Update account
    delete:
      operationId: delete-customer-account
      tags:
        - Clientes
        - Customers
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                uuid:
                  $ref: '#/paths/~1customer~1account/put/requestBody/content/application~1json/schema/properties/uuid'
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                uuid: 9B5DDCC2-24A9-4157-A56D-193EB9EF3966
              required:
                - signature
                - uuid
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2019-11-19T16:40:23+0100'
                    customer_account:
                      account_number: '100169168'
                      account_type: ACCOUNT_NUMBER
                      uuid: 9B5DDCC2-24A9-4157-A56D-193EB9EF3966
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      customer_account:
                        $ref: '#/paths/~1customer~1account/put/responses/200/content/application~1json/schema/allOf/1/properties/customer_account'
                    required:
                      - customer_account
          description: OK
      summary: Eliminar cuenta
      description: Mediante este método se eliminan los datos asociados a una cuenta bancaria de un usuario en el sistema.
      x-description-i18n:
        eng: This method eliminates the data associated with a bank account of a user in the system
      x-summary-i18n:
        eng: Delete account
  '/customer/account/{uuid}':
    get:
      operationId: get-customer-account
      tags:
        - Clientes
        - Customers
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: uuid
          in: path
          required: true
          example: 1F405EA3-9798-42A6-9E87-BD347EF67F55
          schema:
            type: string
          description: Identificador de la cuenta del usuario.
          x-description-i18n:
            eng: Unique identifier of the user's account.
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                uuid:
                  $ref: '#/paths/~1customer~1account/put/requestBody/content/application~1json/schema/properties/uuid'
              example:
                uuid: 9B5DDCC2-24A9-4157-A56D-193EB9EF3966
              required:
                - uuid
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2019-11-19T16:24:21+0100'
                    customer_account:
                      account_number: '100169168'
                      account_type: ACCOUNT_NUMBER
                      uuid: 9B5DDCC2-24A9-4157-A56D-193EB9EF3966
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      customer_account:
                        $ref: '#/paths/~1customer~1account/put/responses/200/content/application~1json/schema/allOf/1/properties/customer_account'
                    required:
                      - customer_account
          description: OK
      summary: Obtener cuenta
      description: Mediante este método se obtienen los datos asociados a una cuenta bancaria de un usuario en el sistema.
      x-description-i18n:
        eng: Through this method the data associated with a bank account of a user in the system is obtained.
      x-summary-i18n:
        eng: Get account
  /customer/address:
    post:
      operationId: create-customer-address
      tags:
        - Clientes
        - Customers
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                address1:
                  $ref: '#/components/schemas/Address/properties/address1'
                address2:
                  $ref: '#/components/schemas/Address/properties/address2'
                  nullable: true
                address3:
                  $ref: '#/components/schemas/Address/properties/address3'
                  nullable: true
                city:
                  $ref: '#/components/schemas/Address/properties/city'
                country:
                  $ref: '#/components/schemas/Address/properties/country'
                default:
                  $ref: '#/components/schemas/Address/properties/default'
                external_id:
                  $ref: '#/components/schemas/Customer/properties/external_id'
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                state_code:
                  $ref: '#/components/schemas/Address/properties/state_code'
                type:
                  $ref: '#/components/schemas/AddressType'
                zip_code:
                  $ref: '#/components/schemas/Address/properties/zip_code'
              example:
                address1: Ronda
                address2: Magdalena
                address3: número 20
                city: Castellón
                country: ESP
                default: false
                external_id: 12345678A
                signature: 121149a0ba5361191d740fa898784a8b
                state_code: Castellón
                zip_code: '12006'
              required:
                - signature
                - address1
                - external_id
                - city
                - state_code
                - country
                - zip_code
                - default
                - type
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2019-11-19T16:47:48+0100'
                    customer:
                      external_id: 12345678A
                    customer_address:
                      address1: Ronda
                      address2: Magdalena
                      address3: número 20
                      city: Castellón
                      country: ESP
                      default: true
                      state_code: Castellón
                      type: OTHER
                      uuid: B7B20B82-0112-464F-BE0F-2905BA84CDED
                      zip_code: '12006'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      Customer:
                        $ref: '#/components/schemas/Customer'
                      customer_address:
                        $ref: '#/components/schemas/Address'
                    required:
                      - customer
                      - customer_address
          description: OK
      summary: Crear dirección
      description: Mediante este método se crean los datos asociados a una dirección de un usuario en el sistema.
      x-description-i18n:
        eng: This method creates the data associated with an address of a user in the system.
      x-summary-i18n:
        eng: Create address
    put:
      operationId: update-customer-address
      tags:
        - Clientes
        - Customers
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                uuid:
                  type: string
                  description: Identificador de la dirección del usuario.
                  x-description-i18n:
                    eng: Unique identifier of the user's address.
                address1:
                  $ref: '#/components/schemas/Address/properties/address1'
                address2:
                  $ref: '#/components/schemas/Address/properties/address2'
                  nullable: true
                address3:
                  $ref: '#/components/schemas/Address/properties/address3'
                  nullable: true
                city:
                  $ref: '#/components/schemas/Address/properties/city'
                country:
                  $ref: '#/components/schemas/Address/properties/country'
                default:
                  $ref: '#/components/schemas/Address/properties/default'
                external_id:
                  $ref: '#/components/schemas/Customer/properties/external_id'
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                state_code:
                  $ref: '#/components/schemas/Address/properties/state_code'
                type:
                  $ref: '#/components/schemas/AddressType'
                zip_code:
                  $ref: '#/components/schemas/Address/properties/zip_code'
              example:
                uuid: 9B5DDCC2-24A9-4157-A56D-193EB9EF3966
                address1: Ronda
                address2: Magdalena
                address3: número 20
                city: Castellón
                country: ESP
                default: false
                external_id: 12345678A
                signature: 121149a0ba5361191d740fa898784a8b
                state_code: Castellón
                zip_code: '12006'
              required:
                - signature
                - uuid
                - address1
                - external_id
                - city
                - state_code
                - country
                - zip_code
                - default
                - type
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2019-11-19T16:54:54+0100'
                    customer:
                      external_id: 12345678A
                    customer_address:
                      address1: Ronda
                      address2: Magdalena
                      address3: número 20
                      city: Castellón
                      country: ESP
                      default: true
                      state_code: Castellón
                      type: OTHER
                      uuid: B7B20B82-0112-464F-BE0F-2905BA84CDED
                      zip_code: '12006'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      customer_address:
                        $ref: '#/components/schemas/Address'
                    required:
                      - customer_address
          description: OK
      summary: Actualizar dirección
      description: Mediante este método se actualizan los datos asociados a un UUID de dirección. No se podrá actualizar el tipo de dirección.
      x-description-i18n:
        eng: This method updates the data associated to an address UUID. The type of address cannot be updated.
      x-summary-i18n:
        eng: Update address
    delete:
      operationId: delete-customer-address
      tags:
        - Clientes
        - Customers
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                uuid:
                  $ref: '#/paths/~1customer~1address/put/requestBody/content/application~1json/schema/properties/uuid'
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                uuid: B7B20B82-0112-464F-BE0F-2905BA84CDED
              required:
                - signature
                - uuid
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2019-11-19T17:04:32+0100'
                    customer_address:
                      address1: Ronda
                      address2: Magdalena
                      address3: número 20
                      city: Castellón
                      country: ESP
                      default: true
                      state_code: Castellón
                      type: OTHER
                      uuid: B7B20B82-0112-464F-BE0F-2905BA84CDED
                      zip_code: '12006'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      customer_address:
                        $ref: '#/components/schemas/Address'
                    required:
                      - customer_address
          description: OK
      summary: Eliminar dirección
      description: Mediante este método se eliminan los datos asociados a una dirección de un usuario en el sistema.
      x-description-i18n:
        eng: This method eliminates the data associated with an address of a user in the system.
      x-summary-i18n:
        eng: Delete address
  '/customer/address/{uuid}':
    get:
      operationId: get-customer-address
      tags:
        - Clientes
        - Customers
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: uuid
          in: path
          required: true
          example: 1f405ea3-9798-42a6-9e87-bd347ef67f55
          schema:
            type: string
          description: Address UUID
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2019-11-19T16:58:57+0100'
                    customer_address:
                      address1: Ronda
                      address2: Magdalena
                      address3: número 20
                      city: Castellón
                      country: ESP
                      default: true
                      state_code: Castellón
                      type: OTHER
                      uuid: B7B20B82-0112-464F-BE0F-2905BA84CDED
                      zip_code: '12006'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      customer_address:
                        $ref: '#/components/schemas/Address'
                    required:
                      - customer_address
          description: OK
      summary: Obtener dirección
      description: 'Devuelve la dirección de un usuario, dado su UUID.'
      x-description-i18n:
        eng: 'Retrieve a customer''s address, given its UUID.'
      x-summary-i18n:
        eng: Get address
  /customer/profile:
    post:
      operationId: create-customer-profile
      tags:
        - Clientes
        - Customers
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                external_id:
                  $ref: '#/components/schemas/Customer/properties/external_id'
                first_name:
                  $ref: '#/components/schemas/Paypal/properties/first_name'
                last_name:
                  $ref: '#/components/schemas/Paypal/properties/last_name'
                cardholder_name:
                  $ref: '#/components/schemas/Card/properties/holder'
                  nullable: true
                document_identification_issuer_type:
                  $ref: '#/components/schemas/DocumentIdentificationIssuer'
                  nullable: true
                document_identification_type:
                  $ref: '#/components/schemas/DocumentIdentificationType'
                  nullable: true
                document_identification_number:
                  $ref: '#/components/schemas/Profile/properties/document_identification_number'
                  nullable: true
                email:
                  $ref: '#/components/schemas/Paypal/properties/email'
                  nullable: true
                phone:
                  $ref: '#/components/schemas/Phone'
                work_phone:
                  $ref: '#/components/schemas/Phone'
                home_phone:
                  $ref: '#/components/schemas/Phone'
                mobile_phone:
                  $ref: '#/components/schemas/Phone'
                birthdate:
                  $ref: '#/components/schemas/Profile/properties/birthdate'
                  nullable: true
                source_of_funds:
                  $ref: '#/components/schemas/Profile/properties/source_of_funds'
                  nullable: true
                occupation:
                  $ref: '#/components/schemas/Profile/properties/occupation'
                  nullable: true
                social_security_number:
                  $ref: '#/components/schemas/Profile/properties/social_security_number'
                  nullable: true
              example:
                signature: 341f7de8e6fc49da8d8736473af6b03a
                external_id: '1024'
                first_name: Paco
                last_name: García
                cardholder_name: Paco Garcia
                document_identification_issuer_type: STATE_GOVERNMENT
                document_identification_type: ALIEN_REGISTRATION_CARD
                document_identification_number: 12345678A
                email: aaronarriero_.@gmail.co.com
                phone:
                  number: '625879461'
                  prefix: '+34'
                work_phone:
                  number: '643521598'
                  prefix: '+34'
                home_phone:
                  number: '625879461'
                  prefix: '+34'
                mobile_phone:
                  number: '625879461'
                  prefix: '+34'
                occupation: ball juggler
                social_security_number: '1212121212'
                birthdate: '1986-03-06'
                source_of_funds: Bank
              required:
                - external_id
                - first_name
                - last_name
                - phone
                - work_phone
                - home_phone
                - mobile_phone
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2019-11-19T14:06:39+0100'
                    customer:
                      external_id: 12345678A
                    customer_profile:
                      birthdate: '1971-08-05'
                      cardholder_name: Saville J Dulce Armentrout
                      created_at: '2019-11-19 14:06:38'
                      document_identification_issuer_type: FEDERAL_GOVERMENT
                      document_identification_number: 12345678Z
                      document_identification_type: NATIONAL_IDENTITY_DOCUMENT
                      email: name@example.com
                      first_name: Saville J
                      home_phone:
                        number: '654123789'
                        prefix: '123'
                      last_name: Dulce Armentrout
                      mobile_phone:
                        number: '87654132'
                        prefix: '333'
                      occupation: Shoe Machine Operators
                      phone: null
                      social_security_number: 503-33-4388
                      source_of_funds: Salary
                      updated_at: '2019-11-19 14:06:38'
                      work_phone:
                        number: '321654987'
                        prefix: null
          description: OK
      summary: Crear perfil
      description: Mediante este método se crea un nuevo perfil asociado al usuario en el sistema.
      x-description-i18n:
        eng: This method creates a new profile associated to the user in the system.
      x-summary-i18n:
        eng: Create profile
    put:
      operationId: update-customer-profile
      tags:
        - Clientes
        - Customers
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                external_id:
                  $ref: '#/components/schemas/Customer/properties/external_id'
                first_name:
                  $ref: '#/components/schemas/Paypal/properties/first_name'
                last_name:
                  $ref: '#/components/schemas/Paypal/properties/last_name'
                cardholder_name:
                  $ref: '#/components/schemas/Card/properties/holder'
                  nullable: true
                document_identification_issuer_type:
                  $ref: '#/components/schemas/DocumentIdentificationIssuer'
                  nullable: true
                document_identification_type:
                  $ref: '#/components/schemas/DocumentIdentificationType'
                  nullable: true
                document_identification_number:
                  $ref: '#/components/schemas/Profile/properties/document_identification_number'
                  nullable: true
                email:
                  $ref: '#/components/schemas/Paypal/properties/email'
                  nullable: true
                phone:
                  $ref: '#/components/schemas/Phone'
                work_phone:
                  $ref: '#/components/schemas/Phone'
                home_phone:
                  $ref: '#/components/schemas/Phone'
                mobile_phone:
                  $ref: '#/components/schemas/Phone'
                birthdate:
                  $ref: '#/components/schemas/Profile/properties/birthdate'
                  nullable: true
                source_of_funds:
                  $ref: '#/components/schemas/Profile/properties/source_of_funds'
                  nullable: true
                occupation:
                  $ref: '#/components/schemas/Profile/properties/occupation'
                  nullable: true
                social_security_number:
                  $ref: '#/components/schemas/Profile/properties/social_security_number'
                  nullable: true
              example:
                signature: 341f7de8e6fc49da8d8736473af6b03a
                external_id: '1024'
                first_name: Paco
                last_name: García
                cardholder_name: Paco Garcia
                document_identification_issuer_type: STATE_GOVERNMENT
                document_identification_type: ALIEN_REGISTRATION_CARD
                document_identification_number: 12345678A
                email: aaronarriero_.@gmail.co.com
                phone:
                  number: '625879461'
                  prefix: '+34'
                work_phone:
                  number: '643521598'
                  prefix: '+34'
                home_phone:
                  number: '625879461'
                  prefix: '+34'
                mobile_phone:
                  number: '625879461'
                  prefix: '+34'
                occupation: ball juggler
                social_security_number: '1212121212'
                birthdate: '1986-03-06'
                source_of_funds: Bank
              required:
                - external_id
                - first_name
                - last_name
                - phone
                - work_phone
                - home_phone
                - mobile_phone
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2019-11-19T15:04:39+0100'
                    customer:
                      external_id: 12345678A
                    customer_profile:
                      birthdate: '1971-08-05'
                      cardholder_name: Saville J Dulce Armentrout
                      created_at: '2019-11-19 15:04:39'
                      document_identification_issuer_type: FEDERAL_GOVERMENT
                      document_identification_number: 12345678Z
                      document_identification_type: NATIONAL_IDENTITY_DOCUMENT
                      email: name@example.com
                      first_name: Saville J
                      home_phone:
                        number: '654123789'
                        prefix: '123'
                      last_name: Dulce Armentrout
                      mobile_phone:
                        number: '87654132'
                        prefix: '333'
                      occupation: Shoe Machine Operators
                      phone: null
                      social_security_number: 503-33-4388
                      source_of_funds: Salary
                      updated_at: '2019-11-19 15:04:39'
                      work_phone:
                        number: '321654987'
                        prefix: null
          description: OK
      summary: Actualizar perfil
      description: Mediante este método se actualiza un perfil existente de un usuario en el sistema.
      x-description-i18n:
        eng: This method updates an existing profile of a user in the system.
      x-summary-i18n:
        eng: Update profile
  '/customer/profile/{external_id}':
    get:
      operationId: get-customer-profile
      tags:
        - Clientes
        - Customers
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: external_id
          in: path
          required: true
          example: 12345678A
          schema:
            type: string
          description: ID externo otorgado por el comercio para identificar de forma única a un usuario.
          x-description-i18n:
            eng: External ID provided by the merchant to uniquely identify a customer.
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                external_id:
                  $ref: '#/components/schemas/Customer/properties/external_id'
              example:
                external_id: 12345678A
              required:
                - external_id
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2019-11-19T15:09:31+0100'
                    customer_profile:
                      birthdate: '1971-08-05'
                      cardholder_name: Saville J Dulce Armentrout
                      created_at: '2019-11-19 15:04:39'
                      document_identification_issuer_type: FEDERAL_GOVERMENT
                      document_identification_number: 12345678Z
                      document_identification_type: NATIONAL_IDENTITY_DOCUMENT
                      email: name@example.com
                      first_name: Saville J
                      home_phone:
                        number: '654123789'
                        prefix: '123'
                      last_name: Dulce Armentrout
                      mobile_phone:
                        number: '87654132'
                        prefix: '333'
                      occupation: Shoe Machine Operators
                      phone: null
                      social_security_number: 503-33-4388
                      source_of_funds: Salary
                      updated_at: '2019-11-19 15:04:39'
                      work_phone:
                        number: '321654987'
                        prefix: null
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      customer_profile:
                        $ref: '#/components/schemas/Profile'
                    required:
                      - customer_profile
          description: OK
      summary: Obtener perfil
      description: Mediante este método se obtiene un perfil de un usuario.
      x-description-i18n:
        eng: Retrieve a customer's profile.
      x-summary-i18n:
        eng: Get profile
  '/expireOrder/{order_uuid}':
    put:
      operationId: expire-order
      tags:
        - Órdenes
        - Orders
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: order_uuid
          in: path
          required: true
          example: 1F405EA3-9798-42A6-9E87-BD347EF67F55
          schema:
            type: string
          description: Identificador único de la orden.
          x-description-i18n:
            eng: Unique identifier of the order.
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
              example:
                signature: 121149a0ba5361191d740fa898784a8b
              required:
                - signature
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-29T10:14:14+0100'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
          description: OK
        '404':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Not Found
                    code: 404
                    details: Order not found
              schema:
                $ref: '#/components/schemas/ResponseKO'
          description: Not Found
        '409':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Conflict
                    code: 409
                    details: Order token not found
              schema:
                $ref: '#/components/schemas/ResponseKO'
          description: Conflict
      summary: Expirar orden
      description: 'Este endpoint permite expirar una orden de pago. Una vez ha sido expirada, el enlace de pago dejará de poder utilizarse.'
      x-description-i18n:
        eng: 'This endpoint allows you to expire a payment order. Once expired, the payment link can no longer be used.'
      x-summary-i18n:
        eng: Expire order
  '/order/{order_uuid}':
    get:
      operationId: get-order
      tags:
        - Órdenes
        - Orders
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: order_uuid
          in: path
          required: true
          example: 1f405ea3-9798-42a6-9e87-bd347ef67f55
          schema:
            type: string
          description: Identificador único de la orden.
          x-description-i18n:
            eng: Unique identifier of the order.
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-17T11:46:00+0100'
                    order:
                      uuid: 69FF7D60-4EB0-41EC-A249-F08A835ACA67
                      created: '2021-12-17T11:44:47+0100'
                      updated: '2021-12-17T11:44:47+0100'
                      created_from_client_timezone: '2021-12-17T12:44:47+0200'
                      amount: 1
                      currency: 978
                      paid: true
                      status: SUCCESS
                      safe: true
                      refunded: 0
                      additional: ''
                      service: CLEARHAUS
                      service_uuid: B170C6F6-C6C6-4D4A-A34D-671A0829CE06
                      customer: test
                      cof_txnid: null
                      transactions:
                        - uuid: 3BD0B81B-231B-490E-B64C-C41923192EE6
                          created: '2021-12-17T11:44:53+0100'
                          updated: '2021-12-17T11:44:53+0100'
                          created_from_client_timezone: '2021-12-17T12:44:53+0200'
                          operative: AUTHORIZATION
                          amount: 1
                          authorization: 5ed70eff-dec4-464f-bbe1-d2f75d4e2d07
                          processor_id: af99YE6wQeyiSfCKg1rKZw==
                          status: SUCCESS
                          error: NONE
                          source:
                            object: CARD
                            uuid: ED77409F-3398-4DFB-B035-7B5177752358
                            type: CREDIT
                            token: 54e02bf8d6fca227efc41ad3fcda073e0cce45ed047be18c077e389d658970a02ab5e861096d31a38c93c90b35634d91a1b9019ac897723cf7eb70f758715ff4
                            brand: VISA
                            country: US
                            holder: AARON ARRIERO DIAGO
                            bin: 416598
                            last4: '6089'
                            is_saved: false
                            expire_month: 09
                            expire_year: '26'
                            additional: null
                            bank: ''
                            prepaid: false
                            validation_date: '2021-12-17 11:45:54'
                            creation_date: '2021-12-17 11:45:31'
                            brand_description: null
                          antifraud: null
                          device:
                            fingerprint: '2611196874'
                            user_agent: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:94.0) Gecko/20100101 Firefox/94.0'
                          pos:
                            requestor_id: DEVICE
                            pos_device_id: 618b776097ab7c36e15e235f
                            reversal: false
                            brand: MASTERCARD
                            masked_pan: 540205******6010
                            verification_method: 'NO'
                            entry_mode: CLESS
                          metadata:
                            key1: value1
                            key2: value2
                            key3: value3
                      token: null
                      ip: 127.0.0.1
                      reference: null
                      dynamic_descriptor: null
                      threeds_data:
                        version: '2.2'
                        flow: FULL
                        sca_requested: false
                        status: 'Y'
                        eci: '05'
                        exemption: null
                      cardpresent_device: null
                      dcc:
                        fee: 3.00 %
                        change: 0.099415
                        mode: LOCAL
                        selection: CARD
                        card_currency: NOK
                        merchant_currency: EUR
                        ecb_change: null
                    client:
                      uuid: 42B8CF56-A7D7-4D4A-8349-4E27263CB2D5
                    validation_hash: 69fa69f2e333e5199357a33bb06d048495c86ca38ba822e4aa4c38405f6648c0
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      client:
                        $ref: '#/components/schemas/Client'
                      order:
                        $ref: '#/components/schemas/Order'
                required:
                  - order
                  - client
          description: OK
        '404':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Not Found
                    code: 404
                    details: Order not found
              schema:
                $ref: '#/components/schemas/ResponseKO'
          description: Not Found
      summary: Leer orden
      description: 'Este método devuelve la información asociada a una orden, pudiendo ver el estado en el que se encuentra y sus transacciones. Si el pago de la transacción se realizo mediante un dispositivo físico, también aparecerá un campo "pos" dentro de cada transacción con los datos del mismo. '
      x-description-i18n:
        eng: 'This endpoint returns all the information about an order, including its current status and transactions. If the transaction was processed using a physical device, a "pos" field will appear including its details'
      x-summary-i18n:
        eng: Get order
  /orders:
    get:
      operationId: get-transaction-list
      tags:
        - Órdenes
        - Orders
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: start
          in: query
          required: false
          example: '202012312359'
          schema:
            type: string
          description: Fecha inicial en formato `YYYYMMDDHHmm`.
          x-description-i18n:
            eng: Initial date in `YYYYMMDDHHmm` format.
        - name: end
          in: query
          required: false
          example: '202112312359'
          schema:
            type: string
          description: Fecha final en formato `YYYYMMDDHHmm`.
          x-description-i18n:
            eng: Final date in `YYYYMMDDHHmm` format.
        - name: updated_at_start
          in: query
          required: false
          example: '202012312359'
          schema:
            type: string
          description: Fecha inicial de actualización de la transacción en formato `YYYYMMDDHHmm`.
          x-description-i18n:
            eng: Initial updated_at date of the transaction in `YYYYMMDDHHmm` format.
        - name: updated_at_end
          in: query
          required: false
          example: '202112312359'
          schema:
            type: string
          description: Fecha final de actualización de la transacción en formato `YYYYMMDDHHmm`.
          x-description-i18n:
            eng: Final updated_at date of the transaction in `YYYYMMDDHHmm` format.
        - name: terminal
          in: query
          example: 65432781
          schema:
            type: number
          description: Identificador del terminal (FUC). Solo Redsys.
          x-description-i18n:
            eng: The terminal's code (FUC). Redsys only.
        - name: limit
          in: query
          example: 10
          schema:
            type: number
          description: Límite de resultados de la consulta. Por defecto y como máximo 10000.
          x-description-i18n:
            eng: 'Max result count of the query. By default and as an upper limit, 10000.'
        - name: offset
          in: query
          example: 20
          schema:
            type: number
          description: Número de resultados a saltar. Puede ser usado para paginar los resultados.
          x-description-i18n:
            eng: Number of results to skip. May be used to paginate the results.
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    code: 200
                    count: 2
                    current_time: '2017-01-01T00:00:00+0200'
                    message: OK
                    transactions:
                      - transactionUUID: 7778CF86-9803-4026-929B-4EACA1AA1C7C
                        orderUUID: 2F5C7BA3-C6ED-497A-A4E7-CD4AB7597CE7
                        clientUUID: 42B8CF56-A7D7-4D4A-8349-4E27263CB2D5
                        customerExtId: MyCustomer
                        sourceType: VISA
                        holder: Jose
                        country: '840'
                        token: 83f69c969aa93a339e0c98ff81de96f4056c56dc035d48a9b99e8005071793734a16310dff4923f7fae8c248eaf6cf41df8b5b399e53559171711dc302e04943
                        pan: 411111******1111
                        cardUUID: 491F421A-881B-44A0-9588-04927FE37C4A
                        bank: 'JPMORGAN CHASE BANK, N.A.'
                        created: '2021-06-01 16:37:27'
                        updated_at: '2021-06-01 16:38:32'
                        amount: 100
                        processorID: '1534790317'
                        status: REFUSED
                        error: SIS0093
                        authorization: null
                        serviceUUID: 584FD0B2-09C7-476D-8B90-77B0E1F0F892
                        type: AUTHORIZATION
                        ip: 127.0.0.1
                        additional: My merchant data
                        terminal: '327456729'
                        sourceAdditional: null
                        sourcePrepaid: null
                        currency: 978
                        antifraud: '[]'
                        device: null
                        reference: null
                      - transactionUUID: 135FBC35-1A16-4A2D-B632-E3B745BCB3A0
                        orderUUID: 0FD3BBF1-6E89-4EC9-8E8D-223DB3648D14
                        clientUUID: 42B8CF56-A7D7-4D4A-8349-4E27263CB2D5
                        customerExtId: test
                        sourceType: VISA
                        holder: Manuel
                        country: '724'
                        token: 892640bc4d644e0419108d65656ae4a0e57a7d3c404df460261957ef4e8bcf4f21e8f1424f648ceefccf81c6233c38f2f961351f6eaa1c75c98ee7bc63d4a1bb
                        pan: 491801******4602
                        cardUUID: 3551FF9F-9512-463A-A5BE-4CBD9457D73A
                        bank: 'SERVIRED, SOCIEDAD ESPANOLA DE MEDIOS DE PAGO, S.A.'
                        created: '2021-06-04 12:32:47'
                        updated_at: '2021-06-04 12:33:12'
                        amount: 101
                        processorID: 001534790318
                        status: SUCCESS
                        error: NONE
                        authorization: '541653'
                        serviceUUID: 584FD0B2-09C7-476D-8B90-77B0E1F0F892
                        type: AUTHORIZATION
                        ip: 127.0.0.1
                        additional: ''
                        terminal: '327456729'
                        sourceAdditional: null
                        sourcePrepaid: false
                        currency: 978
                        antifraud: '[{"rule":{"score":10,"checks":{"maximumAmountPayment":{"amount":"100"}}}}]'
                        device: Computer
                        reference: null
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - type: object
                    properties:
                      count:
                        type: number
                        description: Número de transacciones en la clave `transactions`.
                        x-description-i18n:
                          eng: Number of transactions under the `transactions` key.
                      next_offset:
                        type: number
                        description: 'El `offset` que debe indicarse en la próxima consulta para obtener la siguiente página de resultados. Si es `null`, ya no hay más resultados.'
                        nullable: true
                        x-description-i18n:
                          eng: 'The `offset` that must be provided in the next query to receive the next page of results. If `null`, there are no more results.'
                      transactions:
                        type: array
                        items:
                          properties:
                            transactionUUID:
                              $ref: '#/components/schemas/Transaction/properties/uuid'
                            orderUUID:
                              $ref: '#/components/schemas/Order/properties/uuid'
                            clientUUID:
                              $ref: '#/components/schemas/Client/properties/uuid'
                            customerExtId:
                              $ref: '#/components/schemas/Customer/properties/external_id'
                              nullable: true
                            sourceType:
                              $ref: '#/components/schemas/Card/properties/brand'
                              nullable: true
                            holder:
                              $ref: '#/components/schemas/Card/properties/holder'
                              nullable: true
                            country:
                              nullable: true
                              type: string
                              example: 724
                              description: Código numérico ISO 3166 del país.
                              x-description-i18n:
                                eng: ISO 3166 numeric code of the country.
                            token:
                              $ref: '#/components/schemas/Card/properties/token'
                              nullable: true
                            pan:
                              $ref: '#/components/schemas/TapToPay/properties/masked_pan'
                              nullable: true
                            cardUUID:
                              $ref: '#/components/schemas/Card/properties/uuid'
                              nullable: true
                            bank:
                              $ref: '#/components/schemas/Card/properties/bank'
                              nullable: true
                            created:
                              type: string
                              description: Fecha de creación de la transacción.
                              x-description-i18n:
                                eng: Creation date of the transaction.
                            updated_at:
                              type: string
                              description: Fecha de última actualización de la transacción.
                              x-description-i18n:
                                eng: Latest update date of the transaction.
                            amount:
                              $ref: '#/components/schemas/Plan/properties/amount'
                            processorID:
                              $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/processor_id'
                              nullable: true
                            status:
                              $ref: '#/components/schemas/TransactionStatus'
                            error:
                              $ref: '#/components/schemas/Transaction/properties/error'
                            authorization:
                              $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/authorization'
                              nullable: true
                            serviceUUID:
                              $ref: '#/components/schemas/Order/properties/service_uuid'
                            type:
                              $ref: '#/components/schemas/MoToPayment/properties/operative'
                            ip:
                              $ref: '#/paths/~1payment~1direct/post/requestBody/content/application~1json/schema/properties/customer_ip'
                              nullable: true
                            additional:
                              $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/additional'
                              nullable: true
                            terminal:
                              nullable: true
                              type: string
                              example: '999008881'
                              description: Identificador del terminal (FUC). Solo Redsys.
                              x-description-i18n:
                                eng: The terminal's code (FUC). Redsys only.
                            sourceAdditional:
                              $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/additional'
                              nullable: true
                            sourcePrepaid:
                              $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/source/properties/prepaid'
                              nullable: true
                            currency:
                              $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/currency'
                            antifraud:
                              nullable: true
                              type: string
                              description: 'El resultado de la ejecución del antifraude, en formato JSON.'
                              x-description-i18n:
                                eng: 'The outcome of the antifraud execution, in JSON format.'
                            device:
                              nullable: true
                              type: string
                              example: Computer
                              description: Tipo de dispositivo utilizado para realizar el pago.
                              x-description-i18n:
                                eng: Type of device used to perform the payment.
                            reference:
                              $ref: '#/components/schemas/Order/properties/reference'
                              nullable: true
                          required:
                            - transactionUUID
                            - orderUUID
                            - clientUUID
                            - created
                            - amount
                            - status
                            - error
                            - serviceUUID
                            - type
                            - currency
                          type: object
                          description: Lista de datos asociados a transacciones de órdenes que se han intentado pagar.
                          x-description-i18n:
                            eng: List of data associated to transactions from orders that were attempted to be paid.
                    required:
                      - count
                      - transactions
          description: OK
      summary: Obtener listado de transacciones
      description: 'Este método devuelve el listado de transacciones del cliente y la de sus hijos, en base a unos filtros enviados en la query.'
      x-description-i18n:
        eng: 'This endpoint returns all the client (and children) transactions, based on several filters included in the queryString.'
      x-summary-i18n:
        eng: Get all orders
  /payment-method/card/batch:
    post:
      operationId: save-cards
      tags:
        - Tarjetas
        - Cards
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                cards:
                  type: array
                  items:
                    type: object
                    properties:
                      card_holder:
                        $ref: '#/components/schemas/Card/properties/holder'
                      card_pan:
                        $ref: '#/paths/~1charge/post/requestBody/content/application~1json/schema/properties/card_pan'
                      card_expiry_month:
                        $ref: '#/components/schemas/Card/properties/expire_month'
                      card_expiry_year:
                        $ref: '#/components/schemas/Card/properties/expire_year'
                      customer_ext_id:
                        $ref: '#/components/schemas/Customer/properties/external_id'
                      additional:
                        $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/additional'
                        nullable: true
                      url_post:
                        $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/url_post'
                        nullable: true
                      validate:
                        type: boolean
                        default: false
                        description: 'Sólo necesario si se quiere validar la tarjeta. Si se envía, el campo `service` es obligatorio, y el campo `card_cvv` puede enviarse para validar también el CVV.'
                        nullable: true
                        x-description-i18n:
                          eng: 'Only necessary if you want the card to be validated. If provided, the `service` field becomes required, and the `card_cvv` field may be sent to validate it as well.'
                      service:
                        $ref: '#/components/schemas/Order/properties/service_uuid'
                        nullable: true
                      card_cvv:
                        $ref: '#/paths/~1payment~1moto/post/requestBody/content/application~1json/schema/properties/card_cvv'
                        nullable: true
                    required:
                      - card_holder
                      - card_pan
                      - card_expiry_month
                      - card_expiry_year
                      - customer_ext_id
                  description: Lista de tarjetas a tokenizar.
                  x-description-i18n:
                    eng: List of cards to tokenize.
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                cards:
                  - card_holder: John Doe
                    card_pan: '4111111111111111'
                    card_expiry_month: '12'
                    card_expiry_year: '19'
                    customer_ext_id: user
                    additional: card12345
                    url_post: 'https://www.some.url'
                    validate: true
                    service: 4D1DA790-B361-4657-BFB7-E2988F4527A4
                    card_cvv: '123'
                  - card_holder: Pepe
                    card_pan: '4918019160034602'
                    card_expiry_month: '10'
                    card_expiry_year: '23'
                    customer_ext_id: user2
                    additional: Tarjeta principal
                    url_post: 'https://www.some.url'
              required:
                - signature
                - cards
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-05-19T12:18:49+0200'
                    cards:
                      - Customer:
                          external_id: test
                        Source:
                          object: CARD
                          uuid: 83CE9834-60B6-427D-BC4E-36C27FAF7951
                          type: CREDIT
                          token: ebc9b5ffa2efcf74197734a071192817e6f2a3fc15f49c4b1bdb6edc46b16e3ab4109498bff8e6ba00fb6d2bd1838afbea67095c4caaa2f46e4acf4d5851884c
                          brand: VISA
                          country: '724'
                          holder: Joselito
                          bin: 454881
                          last4: '0004'
                          expire_month: '12'
                          expire_year: '98'
                          is_saved: true
                          additional: null
                          bank: 'SERVIRED, SOCIEDAD ESPANOLA DE MEDIOS DE PAGO, S.A.'
                          prepaid: ''
                          validation_date: '2021-05-19 12:18:42'
                          creation_date: '2021-05-19 12:18:41'
                          brand_description: null
                      - Customer:
                          external_id: test
                        Source:
                          object: CARD
                          uuid: 9CF620EC-E70C-49EA-B424-3362570C797B
                          type: ''
                          token: 83f69c969aa93a339e0c98ff81de96f4056c56dc035d48a9b99e8005071793734a16310dff4923f7fae8c248eaf6cf41df8b5b399e53559171711dc302e04943
                          brand: VISA
                          country: '840'
                          holder: Joselito
                          bin: 411111
                          last4: '1111'
                          expire_month: '12'
                          expire_year: '22'
                          is_saved: true
                          additional: null
                          bank: 'JPMORGAN CHASE BANK, N.A.'
                          prepaid: ''
                          validation_date: null
                          creation_date: '2021-05-19 12:18:41'
                          brand_description: null
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      cards:
                        type: array
                        items:
                          $ref: '#/components/schemas/TransactionSourceCard'
          description: OK
      summary: Guardar varias tarjetas de crédito/débito
      description: |-
        Mediante este endpoint se pueden almacenar varias tarjetas simultáneamente, las cuales podrán ser utilizadas posteriormente para realizar pagos mediante Webservice.

        Si se indica el campo `validate` a `true`, la tarjeta será validada contra el servicio indicado en el campo `service` para comprobar si existe y tiene fondos en el momento de la validación. Algunos servicios requieren que el campo `card_cvv` sea indicado.
      x-description-i18n:
        eng: |-
          This endpoint can store multiple credit cards, which can be used in a WebService payments call.
          The `validate` and `service` fields are only necessary in case the card needs to be validated against the bank service.
      x-summary-i18n:
        eng: Store multiple credit/debit cards
  /payment-method/card:
    post:
      operationId: save-card
      tags:
        - Tarjetas
        - Cards
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                card_holder:
                  $ref: '#/components/schemas/Card/properties/holder'
                card_pan:
                  $ref: '#/paths/~1charge/post/requestBody/content/application~1json/schema/properties/card_pan'
                card_expiry_month:
                  $ref: '#/components/schemas/Card/properties/expire_month'
                card_expiry_year:
                  $ref: '#/components/schemas/Card/properties/expire_year'
                customer_ext_id:
                  $ref: '#/components/schemas/Customer/properties/external_id'
                additional:
                  $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/additional'
                  nullable: true
                url_post:
                  $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/url_post'
                  nullable: true
                validate:
                  type: boolean
                  default: false
                  description: 'Sólo necesario si se quiere validar la tarjeta. Si se envía, el campo `service` es obligatorio, y el campo `card_cvv` puede enviarse para validar también el CVV.'
                  nullable: true
                  x-description-i18n:
                    eng: 'Only necessary if you want the card to be validated. If provided, the `service` field becomes required, and the `card_cvv` field may be sent to validate it as well.'
                service:
                  $ref: '#/components/schemas/Order/properties/service_uuid'
                  nullable: true
                card_cvv:
                  $ref: '#/paths/~1payment~1moto/post/requestBody/content/application~1json/schema/properties/card_cvv'
                  nullable: true
                source_holder_verification:
                  $ref: '#/components/schemas/SourceHolderVerification'
                  nullable: true
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                card_holder: John Doe
                card_pan: '4111111111111111'
                card_expiry_month: '12'
                card_expiry_year: '19'
                customer_ext_id: user42
                additional: card12345
                url_post: 'https://my.website.com/process'
                validate: false
                service: 60A1F4C0-CC58-47A9-A0B9-868F9EF29045
                card_cvv: '123'
              required:
                - signature
                - card_holder
                - card_pan
                - card_expiry_month
                - card_expiry_year
                - customer_ext_id
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2017-01-12T09:12:58+0100'
                    Customer:
                      external_id: user
                    Source:
                      object: CARD
                      uuid: 7088F344-4261-4244-B0E3-CAEE35E4ADB3
                      type: ''
                      token: f41fdb5764efad821b2527aeaaf236e29d010771ea5a73ba26044526ec934f1100d8fc6930910ccd634ecc81c0aa7a1b3b721a739f2bac8aa4eedc0d529806d8
                      brand: VISA
                      country: '840'
                      holder: Paco
                      bin: 476173
                      last4: '0016'
                      expire_month: '10'
                      expire_year: '23'
                      is_saved: true
                      additional: Tarjeta principal
                      bank: 'JPMORGAN CHASE BANK, N.A.'
                      prepaid: ''
                      validation_date: '2021-12-28 13:51:26'
                      creation_date: '2021-12-28 13:50:45'
                      brand_description: ELECTRON
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      Customer:
                        $ref: '#/components/schemas/Customer'
                      Source:
                        $ref: '#/components/schemas/TransactionSourceCard/properties/Source'
          description: OK
        '400':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Bad Request
                    code: 400
                    details: Card blacklisted
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseKO'
          description: Bad Request
      summary: Guardar tarjeta crédito/débito
      description: |-
        Endpoint utilizado para almacenar una tarjeta de crédito, que se podrá utilizar para realizar un pago por WebService. La tarjeta será asociada al usuario indicado en el parámetro `customer_ext_id`.

        Los campos `validate`, `service` y `source_holder_verification` solo deben enviarse cuando se desee realizar comprobaciones adicionales contra el servicio de pago durante el proceso de tokenización:

          - `validate` permite validar la tarjeta contra el servicio para comprobar si existe o si dispone de fondos en el momento de la validación.
          - `source_holder_verification` permite verificar que el titular indicado coincide con el titular real del medio de pago (SHV).

        Cuando se utilice cualquiera de estas funcionalidades, será obligatorio enviar el campo `service`.
          
        **Nota**: Es posible que una tarjeta no pueda ser tokenizada si se encuentra bajo sospecha de fraude. En esos casos, el servicio devolverá una respuesta de error con código `400`.
      x-description-i18n:
        eng: |-
          This endpoint stores a credit card, so it can be used in a WebService payment call.

          The `validate`, `service`, and `source_holder_verification` fields should only be sent when additional checks against the payment service are required during the tokenization process:
          - `validate` allows validating the card against the service to check whether it exists or has available funds at the time of validation.
          - `source_holder_verification` allows verifying that the provided holder matches the real holder of the payment method (SHV).

          When any of these features are used, the `service` field becomes mandatory.

          **Note:** It is possible that a card cannot be tokenized if it is under suspected fraud. In such cases, the service will return a `400` error response.
      x-summary-i18n:
        eng: Store credit/debit card
  /payment-method/bank:
    post:
      operationId: save-bank
      tags:
        - Cuentas bancarias
        - Bank accounts
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                customer_ext_id:
                  $ref: '#/components/schemas/Customer/properties/external_id'
                account_holder:
                  $ref: '#/components/schemas/Bank/properties/account_holder'
                iban:
                  $ref: '#/components/schemas/Bank/properties/iban'
                additional:
                  $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/additional'
                  nullable: true
                service:
                  $ref: '#/components/schemas/Order/properties/service_uuid'
                  nullable: true
                source_holder_verification:
                  $ref: '#/components/schemas/SourceHolderVerification'
                  nullable: true
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                account_holder: John Doe
                iban: ES9030350000070000000202
                customer_ext_id: user42
                additional: bank12345
              required:
                - signature
                - account_holder
                - iban
                - customer_ext_id
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2023-04-20T11:29:05+0200'
                    Customer:
                      external_id: test
                    Source:
                      object: BANK
                      uuid: CAEBC5AB-E070-45D8-A6EA-78095128E9AC
                      account_holder: John Doe
                      iban: ES9030350000070000000202
                      created_at: '2023-04-20 11:29:05'
                      additional: Main account
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      Customer:
                        $ref: '#/components/schemas/Customer'
                      Source:
                        properties:
                          object:
                            $ref: '#/components/schemas/APM/properties/object'
                          uuid:
                            type: string
                            description: Identificador de la cuenta bancaria.
                            x-description-i18n:
                              eng: Unique identifier of the bank account.
                          account_holder:
                            $ref: '#/components/schemas/Bank/properties/account_holder'
                          iban:
                            $ref: '#/components/schemas/Bank/properties/iban'
                          additional:
                            $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/additional'
                            nullable: true
                        required:
                          - object
                          - uuid
                          - account_holder
                          - iban
                        type: object
          description: OK
      summary: Nueva cuenta bancaria
      description: |-
        Endpoint utilizado para almacenar una cuenta bancaria. La cuenta será asociada al usuario indicado en el parámetro `customer_ext_id`.

        Si se envía el campo `source_holder_verification`, será obligatorio enviar también el campo `service`, ya que la verificación del titular del medio de pago requiere ejecutarse contra un servicio de pago.
      x-description-i18n:
        eng: |-
          Endpoint used to store a bank account. The account will be associated with the customer provided in the `customer_ext_id` parameter.

          If the `source_holder_verification` field is sent, the `service` field becomes mandatory, as payment method holder verification must be executed against a payment service.
      x-summary-i18n:
        eng: New bank account
  /payment-method/card/validate:
    post:
      operationId: revalidate-card
      tags:
        - Tarjetas
        - Cards
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                source_uuid:
                  $ref: '#/components/schemas/TapToPay/properties/uuid'
                customer_ext_id:
                  $ref: '#/components/schemas/Customer/properties/external_id'
                service:
                  $ref: '#/components/schemas/Order/properties/service_uuid'
                card_cvv:
                  $ref: '#/paths/~1payment~1moto/post/requestBody/content/application~1json/schema/properties/card_cvv'
                  nullable: true
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                source_uuid: C10721E7-1404-45DC-8762-351DD9945D1D
                customer_ext_id: 12345678A
                service: 60A1F4C0-CC58-47A9-A0B9-868F9EF29045
                card_cvv: '123'
              required:
                - signature
                - source_uuid
                - customer_ext_id
                - service
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2017-01-12T09:12:58+0100'
                    Customer:
                      external_id: user
                    Source:
                      object: CARD
                      uuid: 7088F344-4261-4244-B0E3-CAEE35E4ADB3
                      type: ''
                      token: f41fdb5764efad821b2527aeaaf236e29d010771ea5a73ba26044526ec934f1100d8fc6930910ccd634ecc81c0aa7a1b3b721a739f2bac8aa4eedc0d529806d8
                      brand: VISA
                      country: '840'
                      holder: Paco
                      bin: 476173
                      last4: '0016'
                      expire_month: '10'
                      expire_year: '23'
                      is_saved: true
                      additional: Tarjeta principal
                      bank: 'JPMORGAN CHASE BANK, N.A.'
                      prepaid: ''
                      validation_date: '2021-12-28 13:51:26'
                      creation_date: '2021-12-28 13:50:45'
                      brand_description: ELECTRON
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      Customer:
                        $ref: '#/components/schemas/Customer'
                      Source:
                        $ref: '#/components/schemas/TransactionSourceCard/properties/Source'
          description: OK
      summary: Revalidar una tarjeta ya tokenizada
      description: Mediante este endpoint se puede validar una tarjeta previamente tokenizada para comprobar si tiene fondos en el momento de la validación. Algunos servicios requieren que el campo `card_cvv` sea indicado.
      x-description-i18n:
        eng: This endpoint validates a card that was previously tokenized. This can be useful in some cases to check if card has funds or is valid. Some payment services require the `card_cvv` to be provided.
      x-summary-i18n:
        eng: Revalidate an already tokenized card
  '/payment-method/{payment-method}/additional':
    put:
      operationId: set-source-description
      tags:
        - Operaciones comunes
        - Common operations
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: payment-method
          in: path
          required: true
          example: card
          schema:
            type: string
            enum:
              - card
              - dynamic_card
              - bank
              - paypal
              - tap_to_pay
              - ecopaynet
          description: Tipo del medio de pago (source).
          x-description-i18n:
            eng: Payment methos (source type).
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                source_uuid:
                  $ref: '#/components/schemas/TapToPay/properties/uuid'
                additional:
                  $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/additional'
                  nullable: true
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                source_uuid: C10721E7-1404-45DC-8762-351DD9945D1D
                additional: Tarjeta principal
              required:
                - signature
                - source_uuid
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-29T10:14:14+0100'
                    Customer:
                      external_id: test
                    Source:
                      object: CARD
                      uuid: 7088F344-4261-4244-B0E3-CAEE35E4ADB3
                      type: ''
                      token: f41fdb5764efad821b2527aeaaf236e29d010771ea5a73ba26044526ec934f1100d8fc6930910ccd634ecc81c0aa7a1b3b721a739f2bac8aa4eedc0d529806d8
                      brand: VISA
                      country: '840'
                      holder: Paco
                      bin: 476173
                      last4: '0016'
                      expire_month: '10'
                      expire_year: '23'
                      is_saved: true
                      additional: Tarjeta principal
                      bank: 'JPMORGAN CHASE BANK, N.A.'
                      prepaid: ''
                      validation_date: '2021-12-28 13:51:26'
                      creation_date: '2021-12-28 13:50:45'
                      brand_description: ELECTRON
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      Customer:
                        $ref: '#/components/schemas/Customer'
                      Source:
                        $ref: '#/components/schemas/TransactionSourceCard/properties/Source'
          description: OK
      summary: Establecer/modificar la descripción del medio de pago
      description: 'Mediante este endpoint se puede asociar o modificar la descripción de un medio de pago almacenado (tarjeta, tarjeta dinámica, cuenta bancaria o PayPal).'
      x-description-i18n:
        eng: 'By using this endpoint, you can add or update the description of a stored payment method (credit card, dynamic card, bank account, or PayPal).'
      x-summary-i18n:
        eng: Set/edit payment method description
  '/payment-method/{source_uuid}/external_id':
    put:
      operationId: update-source-external_id
      tags:
        - Operaciones comunes
        - Common operations
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: source_uuid
          in: path
          required: true
          example: 1F405EA3-9798-42A6-9E87-BD347EF67F55
          schema:
            type: string
          description: Identificador de la forma de pago.
          x-description-i18n:
            eng: Unique identifier of payment method.
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                old_external_id:
                  $ref: '#/components/schemas/Customer/properties/external_id'
                new_external_id:
                  $ref: '#/components/schemas/Customer/properties/external_id'
              example:
                signature: 341f7de8e6fc49da8d8736473af6b03a
                old_external_id: '1024'
                new_external_id: '102455'
              required:
                - old_external_id
                - new_external_id
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    code: 200
                    current_time: '2017-01-12T09:12:58+0100'
                    message: OK
              schema:
                $ref: '#/components/schemas/ResponseOK'
          description: OK
      summary: 'Actualizar external ID tarjetas, tarjetas dinámicas y cuentas bancarias.'
      description: 'Mediante este método se podrá modificar el dueño de una tarjeta ya almacenada en Paylands. Basta con indicar el uuid de la tarjeta, tarjeta dinámicas o cuenta bancaria que desea actualizar en la url. Tras esto indicar en el cuerpo de la petición el external_id actual (old_external_id) y el nuevo (new_external_id).'
      x-description-i18n:
        eng: 'Using this method you can modify the owner of a card already stored in Paylands. Simply indicate the uuid of the card, dynamic card or bank account that you want to update in the url. After this, indicate in the body of the request the current external_id (old_external_id) and the new one (new_external_id).'
      x-summary-i18n:
        eng: 'Update external ID of cards, dynamic cards and bank accounts.'
  /security/list-management:
    post:
      operationId: security-lists-create
      tags:
        - Listas de seguridad
        - Security lists
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                type:
                  enum:
                    - WHITELIST
                    - BLACKLIST
                    - GREYLIST
                  type: string
                  description: Tipo de lista.
                  x-description-i18n:
                    eng: Type security list.
                enabled:
                  type: boolean
                  description: Indica si esta activado.
                  x-description-i18n:
                    eng: Indicate if is enabled.
                description:
                  $ref: '#/paths/~1charge/post/requestBody/content/application~1json/schema/properties/description'
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                type: BLACKLIST
                enabled: true
                description: Black list example
              required:
                - signature
                - type
                - enabled
                - description
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-29T10:14:14+0100'
                    colorlists:
                      uuid: 7088F344-4261-4244-B0E3-CAEE35E4ADB3
                      description: Black list example
                      created_at: '2021-12-28 13:50:45'
                      updated_at: '2021-12-28 13:50:45'
                      is_enabled: true
                      tye: BLACKLIST
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      colorlists:
                        properties:
                          uuid:
                            type: string
                            description: El UUID de la lista.
                            x-description-i18n:
                              eng: The UUID of security list.
                          description:
                            $ref: '#/paths/~1charge/post/requestBody/content/application~1json/schema/properties/description'
                          created_at:
                            $ref: '#/components/schemas/Order/properties/created'
                          updated_at:
                            $ref: '#/components/schemas/Plan/properties/updated_at'
                          is_enabled:
                            $ref: '#/paths/~1security~1list-management/post/requestBody/content/application~1json/schema/properties/enabled'
                        required:
                          - uuid
                          - description
                          - created_at
                          - updated_at
                          - is_enabled
                        type: object
          description: OK
      summary: Creación de listas
      description: 'Endpoint para crear una lista de un tipo determinado. Puede ser blacklist, whitelist o greylist.'
      x-description-i18n:
        eng: 'Endpoint to create a list of a given type. It can be blacklist, whitelist or greylist.'
      x-summary-i18n:
        eng: List creation
  /security/list-management/whitelists|blacklists|greylists:
    get:
      operationId: get-all-security-lists
      tags:
        - Listas de seguridad
        - Security lists
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-29T10:14:14+0100'
                    colorlists:
                      - uuid: 7088F344-4261-4244-B0E3-CAEE35E4ADB3
                        description: Black list example
                        created_at: '2021-12-28 13:50:45'
                        updated_at: '2021-12-28 13:50:45'
                        is_enabled: true
                        tye: BLACKLIST
                      - uuid: 7088F344-4261-4244-B0E3-CAEE35E4ADB8
                        description: Black list example2
                        created_at: '2021-12-28 13:50:45'
                        updated_at: '2021-12-28 13:50:45'
                        is_enabled: false
                        tye: BLACKLIST
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      colorlists:
                        type: array
                        properties:
                          uuid:
                            $ref: '#/paths/~1security~1list-management/post/responses/200/content/application~1json/schema/allOf/1/properties/colorlists/properties/uuid'
                          description:
                            $ref: '#/paths/~1charge/post/requestBody/content/application~1json/schema/properties/description'
                          created_at:
                            $ref: '#/components/schemas/Order/properties/created'
                          updated_at:
                            $ref: '#/components/schemas/Plan/properties/updated_at'
                          is_enabled:
                            $ref: '#/paths/~1security~1list-management/post/requestBody/content/application~1json/schema/properties/enabled'
                        required:
                          - uuid
                          - description
                          - created_at
                          - updated_at
                          - is_enabled
          description: OK
      summary: Obtener todas las listas de un tipo
      description: ''
      x-description-i18n:
        eng: ''
      x-summary-i18n:
        eng: Get all list from a type
  '/security/list-management/{list_uuid}':
    get:
      operationId: security-lists-get-delete
      tags:
        - Listas de seguridad
        - Security lists
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: list_uuid
          in: path
          required: true
          example: 1F405EA3-9798-42A6-9E87-BD347EF67F55
          schema:
            type: string
          description: Identificador de la lista.
          x-description-i18n:
            eng: Unique identifier of security list.
      requestBody:
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-29T10:14:14+0100'
                    colorlists:
                      uuid: 7088F344-4261-4244-B0E3-CAEE35E4ADB3
                      description: Black list example
                      created_at: '2021-12-28 13:50:45'
                      updated_at: '2021-12-28 13:50:45'
                      is_enabled: true
                      tye: BLACKLIST
                      items:
                        - uuid: 7088F344-4261-4244-B0E3-CAEE35E4AD23
                          value: 444444
                          created_at: '2021-12-28 13:50:45'
                          updated_at: '2021-12-28 13:50:45'
                          type: BIN
                          description: Blocked bin description
                      associated_services:
                        - uuid: 7088F344-4261-4244-B0E3-CAEE35E4ADB2
                          name: Test service
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      colorlists:
                        properties:
                          uuid:
                            $ref: '#/paths/~1security~1list-management/post/responses/200/content/application~1json/schema/allOf/1/properties/colorlists/properties/uuid'
                          description:
                            $ref: '#/paths/~1charge/post/requestBody/content/application~1json/schema/properties/description'
                          created_at:
                            $ref: '#/components/schemas/Order/properties/created'
                          updated_at:
                            $ref: '#/components/schemas/Plan/properties/updated_at'
                          enabled:
                            $ref: '#/paths/~1security~1list-management/post/requestBody/content/application~1json/schema/properties/enabled'
                          items:
                            type: array
                            properties:
                              uuid:
                                $ref: '#/paths/~1security~1list-management~1%7Blist_uuid%7D~1items/delete/requestBody/content/application~1json/schema/properties/items/items'
                              type:
                                $ref: '#/paths/~1security~1list-management~1%7Blist_uuid%7D~1items/post/requestBody/content/application~1json/schema/properties/items/items/properties/type'
                              value:
                                $ref: '#/paths/~1security~1list-management~1%7Blist_uuid%7D~1items/post/requestBody/content/application~1json/schema/properties/items/items/properties/value'
                              description:
                                $ref: '#/paths/~1charge/post/requestBody/content/application~1json/schema/properties/description'
                              created_at:
                                $ref: '#/components/schemas/Order/properties/created'
                              updated_at:
                                $ref: '#/components/schemas/Plan/properties/updated_at'
                            required:
                              - uuid
                              - type
                              - value
                              - description
                              - created_at
                              - updated_at
                          associated_services:
                            type: array
                            properties:
                              service_uuid:
                                $ref: '#/components/schemas/Order/properties/service_uuid'
                              name:
                                $ref: '#/paths/~1charge/post/requestBody/content/application~1json/schema/properties/description'
                            required:
                              - service_uuid
                              - name
                        required:
                          - uuid
                          - description
                          - created_at
                          - updated_at
                          - enabled
                        type: object
          description: OK
      summary: Obtener lista
      description: ''
      x-description-i18n:
        eng: ''
      x-summary-i18n:
        eng: Get list
    delete:
      operationId: security-lists-delete
      tags:
        - Listas de seguridad
        - Security lists
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: list_uuid
          in: path
          required: true
          example: 1F405EA3-9798-42A6-9E87-BD347EF67F55
          schema:
            type: string
          description: Identificador de la lista.
          x-description-i18n:
            eng: Unique identifier of security list.
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
              example:
                signature: 121149a0ba5361191d740fa898784a8b
              required:
                - signature
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-29T10:14:14+0100'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
          description: OK
      summary: Borrar lista
      description: ''
      x-description-i18n:
        eng: ''
      x-summary-i18n:
        eng: Delete list
  '/security/list-management/{list_uuid}/{enable|disable}':
    patch:
      operationId: security-lists-enable-disable
      tags:
        - Listas de seguridad
        - Security lists
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: list_uuid
          in: path
          required: true
          example: 1F405EA3-9798-42A6-9E87-BD347EF67F55
          schema:
            type: string
          description: Identificador de la lista.
          x-description-i18n:
            eng: Unique identifier of security list.
      requestBody:
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-29T10:14:14+0100'
                    colorlists:
                      uuid: 7088F344-4261-4244-B0E3-CAEE35E4ADB3
                      description: Black list example
                      created_at: '2021-12-28 13:50:45'
                      updated_at: '2021-12-28 13:50:45'
                      is_enabled: true
                      tye: BLACKLIST
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      colorlists:
                        properties:
                          uuid:
                            $ref: '#/paths/~1security~1list-management/post/responses/200/content/application~1json/schema/allOf/1/properties/colorlists/properties/uuid'
                          description:
                            $ref: '#/paths/~1charge/post/requestBody/content/application~1json/schema/properties/description'
                          created_at:
                            $ref: '#/components/schemas/Order/properties/created'
                          updated_at:
                            $ref: '#/components/schemas/Plan/properties/updated_at'
                          is_enabled:
                            $ref: '#/paths/~1security~1list-management/post/requestBody/content/application~1json/schema/properties/enabled'
                        required:
                          - uuid
                          - description
                          - created_at
                          - updated_at
                          - is_enabled
                        type: object
          description: OK
      summary: Habilitar y deshabilitar lista
      description: Con este endpoint podemos habilitar o deshabilitar una lista
      x-description-i18n:
        eng: Whit this endpoint can we enable or disable a list
      x-summary-i18n:
        eng: Enable or disable list
  '/security/list-management/{list_uuid}/service':
    post:
      operationId: security-lists-add-associate_services
      tags:
        - Listas de seguridad
        - Security lists
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: list_uuid
          in: path
          required: true
          example: 1F405EA3-9798-42A6-9E87-BD347EF67F55
          schema:
            type: string
          description: Identificador de la lista.
          x-description-i18n:
            eng: Unique identifier of security list.
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                service_uuid:
                  $ref: '#/components/schemas/Order/properties/service_uuid'
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                service_uuid: 60A1F4C0-CC58-47A9-A0B9-868F9EF29045
              required:
                - signature
                - service_uuid
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    code: 200
                    current_time: '2017-01-12T09:12:58+0100'
                    message: OK
              schema:
                $ref: '#/components/schemas/ResponseOK'
          description: OK
      summary: Asociar servicios a la lista.
      description: Este endpoint permite asociar un servicio a una lista.
      x-description-i18n:
        eng: This endpoint allows you to associate a service to a list.
      x-summary-i18n:
        eng: Associate service to list
    delete:
      operationId: security-lists-delete-associate_services
      tags:
        - Listas de seguridad
        - Security lists
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: list_uuid
          in: path
          required: true
          example: 1F405EA3-9798-42A6-9E87-BD347EF67F55
          schema:
            type: string
          description: Identificador de la lista.
          x-description-i18n:
            eng: Unique identifier of security list.
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                service_uuid:
                  $ref: '#/components/schemas/Order/properties/service_uuid'
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                service_uuid: 60A1F4C0-CC58-47A9-A0B9-868F9EF29045
              required:
                - signature
                - service_uuid
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    code: 200
                    current_time: '2017-01-12T09:12:58+0100'
                    message: OK
              schema:
                $ref: '#/components/schemas/ResponseOK'
          description: OK
      summary: Desasociar servicios a las listas
      description: Este endpoint permite desasociar un servicio de una lista.
      x-description-i18n:
        eng: This endpoint allows you to unlink a service from a list.
      x-summary-i18n:
        eng: Unlink service from a list
  '/security/list-management/{list_uuid}/items':
    post:
      operationId: security-lists-create-items
      tags:
        - Listas de seguridad
        - Security lists
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: list_uuid
          in: path
          required: true
          example: 1F405EA3-9798-42A6-9E87-BD347EF67F55
          schema:
            type: string
          description: Identificador de la lista.
          x-description-i18n:
            eng: Unique identifier of security list.
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                items:
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        enum:
                          - BIN
                          - UUID
                          - TOKEN
                          - EXTERNAL_ID
                          - IP
                        type: string
                        description: Tipos de item.
                        x-description-i18n:
                          eng: Item types
                      value:
                        type: string
                        description: Valor del item.
                        x-description-i18n:
                          eng: Value of item.
                      description:
                        $ref: '#/paths/~1charge/post/requestBody/content/application~1json/schema/properties/description'
                    required:
                      - type
                      - value
                      - description
                  description: Items que se van a añadir a la lista.
                  x-description-i18n:
                    eng: Items to add an a list.
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                items:
                  - type: EXTERNAL_ID
                    value: test1
                    description: Item example
              required:
                - signature
                - items
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-29T10:14:14+0100'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
          description: OK
      summary: Crear items asociados a una lista
      description: ''
      x-description-i18n:
        eng: ''
      x-summary-i18n:
        eng: Create associated items to a list
    delete:
      operationId: security-lists-delete-items
      tags:
        - Listas de seguridad
        - Security lists
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: list_uuid
          in: path
          required: true
          example: 1F405EA3-9798-42A6-9E87-BD347EF67F55
          schema:
            type: string
          description: Identificador de la lista.
          x-description-i18n:
            eng: Unique identifier of security list.
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                items:
                  type: array
                  items:
                    type: string
                    description: El UUID del item.
                    x-description-i18n:
                      eng: The UUID of the item.
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                items:
                  - item_uuid: 7088F344-4261-4244-B0E3-CAEE35E4ADB3
              required:
                - signature
                - items
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-29T10:14:14+0100'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
          description: OK
      summary: Borrar items de una lista
      description: ''
      x-description-i18n:
        eng: ''
      x-summary-i18n:
        eng: Delete items from a list
  '/payment-method/{payment-method}/{uuid}':
    get:
      operationId: get-source
      deprecated: true
      tags:
        - Common operations
        - Operaciones comunes
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: payment-method
          in: path
          required: true
          example: card
          schema:
            type: string
            enum:
              - card
              - dynamic_card
              - bank
              - paypal
              - tap_to_pay
              - ecopaynet
          description: Tipo de del medio de pago (source).
          x-description-i18n:
            eng: Source type.
        - name: uuid
          in: path
          required: true
          example: 1F405EA3-9798-42A6-9E87-BD347EF67F55
          schema:
            type: string
          description: Identificador único del source.
          x-description-i18n:
            eng: Unique identifier of the source.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                oneOf:
                  - title: Card
                    allOf:
                      - allOf:
                          - $ref: '#/components/schemas/ResponseOK'
                          - type: object
                            required:
                              - card
                            properties:
                              card:
                                type: object
                                properties:
                                  Customer:
                                    $ref: '#/components/schemas/Customer'
                                  Source:
                                    $ref: '#/components/schemas/TransactionSourceCard/properties/Source'
                  - title: Dynamic card
                    allOf:
                      - allOf:
                          - $ref: '#/components/schemas/ResponseOK'
                          - type: object
                            required:
                              - dynamic_card
                            properties:
                              dynamic_card:
                                type: object
                                properties:
                                  Customer:
                                    $ref: '#/components/schemas/Customer'
                                  Source:
                                    $ref: '#/paths/~1payment-method~1%7Bidentifier%7D/get/responses/200/content/application~1json/schema/oneOf/1/allOf/0/allOf/1/properties/source/properties/Source'
                  - title: Bank
                    allOf:
                      - allOf:
                          - $ref: '#/components/schemas/ResponseOK'
                          - type: object
                            required:
                              - bank
                            properties:
                              bank:
                                type: object
                                properties:
                                  Customer:
                                    $ref: '#/components/schemas/Customer'
                                  Source:
                                    $ref: '#/paths/~1payment-method~1bank/post/responses/200/content/application~1json/schema/allOf/1/properties/Source'
                  - title: Paypal
                    allOf:
                      - allOf:
                          - $ref: '#/components/schemas/ResponseOK'
                          - type: object
                            required:
                              - paypal
                            properties:
                              paypal:
                                type: object
                                properties:
                                  Customer:
                                    $ref: '#/components/schemas/Customer'
                                  Source:
                                    $ref: '#/components/schemas/Paypal'
                  - title: Tap To Pay
                    allOf:
                      - allOf:
                          - $ref: '#/components/schemas/ResponseOK'
                          - type: object
                            required:
                              - tap_to_pay
                            properties:
                              tap_to_pay:
                                type: object
                                properties:
                                  Customer:
                                    $ref: '#/components/schemas/Customer'
                                  Source:
                                    $ref: '#/components/schemas/TapToPay'
                  - title: Ecopaynet
                    allOf:
                      - allOf:
                          - $ref: '#/components/schemas/ResponseOK'
                          - type: object
                            required:
                              - ecopaynet
                            properties:
                              ecopaynet:
                                type: object
                                properties:
                                  Customer:
                                    $ref: '#/components/schemas/Customer'
                                  Source:
                                    $ref: '#/components/schemas/Ecopaynet'
              examples:
                card:
                  value:
                    message: OK
                    code: 200
                    current_time: '2017-01-12T09:12:58+0100'
                    card:
                      Customer:
                        external_id: user
                      Source:
                        object: CARD
                        uuid: 7088F344-4261-4244-B0E3-CAEE35E4ADB3
                        type: ''
                        token: f41fdb57...
                        brand: VISA
                        country: '840'
                        holder: Paco
                        bin: 476173
                        last4: '0016'
                        expire_month: '10'
                        expire_year: '23'
                        is_saved: true
                        additional: Tarjeta principal
                        bank: 'JPMORGAN CHASE BANK, N.A.'
                        prepaid: ''
                        validation_date: '2021-12-28 13:51:26'
                        creation_date: '2021-12-28 13:50:45'
                        brand_description: ELECTRON
                        cof:
                          is_available: true
                dynamic_card:
                  value:
                    message: OK
                    code: 200
                    current_time: '2025-09-10T09:12:58+0100'
                    dynamic_card:
                      Customer:
                        external_id: user
                      Source:
                        object: DYNAMIC_CARD
                        uuid: 1F405EA3-9798-42A6-9E87-BD347EF67F55
                        created_at: '2025-09-08 19:35:20'
                        dpan: 489537******2430
                        last4: 1111
                        brand: VISA
                        bank: U.S. Region
                        country: US
                        type: DEBIT
                        brand_description: Visa Signature Preferred
                        prepaid: null
                        origin: SCHEME_TOKEN
                        additional: null
                        validation_date: '2025-09-08 19:35:20'
                        expire_month: '12'
                        expire_year: '25'
                bank:
                  value:
                    message: OK
                    code: 200
                    current_time: '2023-04-20T15:33:24+0200'
                    bank:
                      Customer:
                        external_id: user
                      Source:
                        object: BANK
                        uuid: CAEBC5AB-E070-45D8-A6EA-78095128E9AC
                        account_holder: John Doe
                        iban: ES9030350000070000000202
                        created_at: '2023-04-20 11:29:05'
                        additional: Main account
                        validation_date: null
                paypal:
                  value:
                    message: OK
                    code: 200
                    current_time: '2025-09-10T09:12:58+0100'
                    paypal:
                      Customer:
                        external_id: user
                      Source:
                        object: PAYPAL
                        uuid: FC9B44CE-FF5A-4566-968D-512B208D0374
                        payer_id: 69UPSZGGZN3AJ
                        first_name: John
                        last_name: Doe
                        email: sb-gz6v144699557@business.example.com
                        country_alpha2: ES
                        additional: null
                        validation_date: '2025-07-30 10:39:45'
                        creation_date: '2025-07-28 14:20:02'
                tap_to_pay:
                  value:
                    message: OK
                    code: 200
                    current_time: '2025-09-10T09:12:58+0100'
                    tap_to_pay:
                      Customer:
                        external_id: user
                      Source:
                        object: TAP_TO_PAY
                        uuid: FC9B44CE-FF5A-4566-968D-512B208D0374
                        masked_pan: 540205******6010
                        additional: null
                        validation_date: '2025-07-30 10:39:45'
                        creation_date: '2025-07-28 14:20:02'
                ecopaynet:
                  value:
                    message: OK
                    code: 200
                    current_time: '2025-09-10T09:12:58+0100'
                    ecopaynet:
                      Customer:
                        external_id: user
                      Source:
                        object: ECOPAYNET
                        uuid: FC9B44CE-FF5A-4566-968D-512B208D0374
                        bin: 476173
                        last4: '0016'
                        additional: null
                        validation_date: '2025-07-30 10:39:45'
                        creation_date: '2025-07-28 14:20:02'
        '404':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Not Found
                    code: 404
                    details: Source not found
              schema:
                $ref: '#/components/schemas/ResponseKO'
          description: Not Found
      summary: Ver medio de pago
      description: 'Mediante este endpoint se pueden obtener los datos de un **source** dado su UUID y su tipo. El source puede ser de distintos tipos (tarjeta, tarjeta dinámica, cuenta bancaria, etc.).'
      x-description-i18n:
        eng: 'Through this endpoint you can obtain the data of a **source** by its UUID and type. The source can be of different types (card, dynamic card, bank account, etc.).'
      x-summary-i18n:
        eng: View payment method
  '/payment-method/{identifier}':
    get:
      operationId: get-source-by-uuid
      tags:
        - Common operations
        - Operaciones comunes
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: identifier
          in: path
          required: true
          example: 1F405EA3-9798-42A6-9E87-BD347EF67F55
          schema:
            type: string
          description: Identificador único del source.
          x-description-i18n:
            eng: Unique identifier of the source.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                oneOf:
                  - title: Card
                    allOf:
                      - allOf:
                          - $ref: '#/components/schemas/ResponseOK'
                          - type: object
                            required:
                              - source
                            properties:
                              source:
                                type: object
                                properties:
                                  Customer:
                                    $ref: '#/components/schemas/Customer'
                                  Source:
                                    $ref: '#/components/schemas/TransactionSourceCard/properties/Source'
                  - title: Dynamic card
                    allOf:
                      - allOf:
                          - $ref: '#/components/schemas/ResponseOK'
                          - type: object
                            required:
                              - source
                            properties:
                              source:
                                type: object
                                properties:
                                  Customer:
                                    $ref: '#/components/schemas/Customer'
                                  Source:
                                    properties:
                                      object:
                                        $ref: '#/components/schemas/APM/properties/object'
                                      uuid:
                                        $ref: '#/components/schemas/Card/properties/uuid'
                                      created_at:
                                        $ref: '#/components/schemas/Order/properties/created'
                                      dpan:
                                        $ref: '#/components/schemas/DynamicCard/properties/dpan'
                                      last4:
                                        $ref: '#/components/schemas/DynamicCard/properties/last4'
                                      brand:
                                        $ref: '#/components/schemas/Card/properties/brand'
                                      bank:
                                        $ref: '#/components/schemas/Card/properties/bank'
                                      country:
                                        $ref: '#/components/schemas/Card/properties/country'
                                      type:
                                        $ref: '#/components/schemas/SourceTypeOnPayment'
                                      brand_description:
                                        $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/source/properties/brand_description'
                                        nullable: true
                                      prepaid:
                                        $ref: '#/components/schemas/Card/properties/prepaid'
                                      origin:
                                        $ref: '#/components/schemas/Card/properties/origin'
                                      additional:
                                        $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/additional'
                                        nullable: true
                                      validation_date:
                                        $ref: '#/components/schemas/Paypal/properties/validation_date'
                                        nullable: true
                                      expire_month:
                                        $ref: '#/components/schemas/Card/properties/expire_month'
                                      expire_year:
                                        $ref: '#/components/schemas/Card/properties/expire_year'
                                    required:
                                      - object
                                      - uuid
                                      - created_at
                                      - dpan
                                      - brand
                                      - bank
                                      - country
                                      - type
                                      - expire_month
                                      - expire_year
                                    type: object
                  - title: Bank
                    allOf:
                      - allOf:
                          - $ref: '#/components/schemas/ResponseOK'
                          - type: object
                            required:
                              - source
                            properties:
                              source:
                                type: object
                                properties:
                                  Customer:
                                    $ref: '#/components/schemas/Customer'
                                  Source:
                                    $ref: '#/paths/~1payment-method~1bank/post/responses/200/content/application~1json/schema/allOf/1/properties/Source'
                  - title: Paypal
                    allOf:
                      - allOf:
                          - $ref: '#/components/schemas/ResponseOK'
                          - type: object
                            required:
                              - source
                            properties:
                              source:
                                type: object
                                properties:
                                  Customer:
                                    $ref: '#/components/schemas/Customer'
                                  Source:
                                    $ref: '#/components/schemas/Paypal'
                  - title: Tap To Pay
                    allOf:
                      - allOf:
                          - $ref: '#/components/schemas/ResponseOK'
                          - type: object
                            required:
                              - source
                            properties:
                              source:
                                type: object
                                properties:
                                  Customer:
                                    $ref: '#/components/schemas/Customer'
                                  Source:
                                    $ref: '#/components/schemas/TapToPay'
                  - title: Ecopaynet
                    allOf:
                      - allOf:
                          - $ref: '#/components/schemas/ResponseOK'
                          - type: object
                            required:
                              - source
                            properties:
                              source:
                                type: object
                                properties:
                                  Customer:
                                    $ref: '#/components/schemas/Customer'
                                  Source:
                                    $ref: '#/components/schemas/Ecopaynet'
              examples:
                card:
                  value:
                    message: OK
                    code: 200
                    current_time: '2017-01-12T09:12:58+0100'
                    source:
                      Customer:
                        external_id: user
                      Source:
                        object: CARD
                        uuid: 7088F344-4261-4244-B0E3-CAEE35E4ADB3
                        type: ''
                        token: f41fdb57...
                        brand: VISA
                        country: '840'
                        holder: Paco
                        bin: 476173
                        last4: '0016'
                        expire_month: '10'
                        expire_year: '23'
                        is_saved: true
                        additional: Tarjeta principal
                        bank: 'JPMORGAN CHASE BANK, N.A.'
                        prepaid: ''
                        validation_date: '2021-12-28 13:51:26'
                        creation_date: '2021-12-28 13:50:45'
                        brand_description: ELECTRON
                        cof:
                          is_available: true
                dynamic_card:
                  value:
                    message: OK
                    code: 200
                    current_time: '2025-09-10T09:12:58+0100'
                    source:
                      Customer:
                        external_id: user
                      Source:
                        object: DYNAMIC_CARD
                        uuid: 1F405EA3-9798-42A6-9E87-BD347EF67F55
                        created_at: '2025-09-08 19:35:20'
                        dpan: 489537******2430
                        last4: 1111
                        brand: VISA
                        bank: U.S. Region
                        country: US
                        type: DEBIT
                        brand_description: Visa Signature Preferred
                        prepaid: null
                        origin: SCHEME_TOKEN
                        additional: null
                        validation_date: '2025-09-08 19:35:20'
                        expire_month: '12'
                        expire_year: '25'
                bank:
                  value:
                    message: OK
                    code: 200
                    current_time: '2023-04-20T15:33:24+0200'
                    source:
                      Customer:
                        external_id: user
                      Source:
                        object: BANK
                        uuid: CAEBC5AB-E070-45D8-A6EA-78095128E9AC
                        account_holder: John Doe
                        iban: ES9030350000070000000202
                        created_at: '2023-04-20 11:29:05'
                        additional: Main account
                        validation_date: null
                paypal:
                  value:
                    message: OK
                    code: 200
                    current_time: '2025-09-10T09:12:58+0100'
                    source:
                      Customer:
                        external_id: user
                      Source:
                        object: PAYPAL
                        uuid: FC9B44CE-FF5A-4566-968D-512B208D0374
                        payer_id: 69UPSZGGZN3AJ
                        first_name: John
                        last_name: Doe
                        email: sb-gz6v144699557@business.example.com
                        country_alpha2: ES
                        additional: null
                        validation_date: '2025-07-30 10:39:45'
                        creation_date: '2025-07-28 14:20:02'
                tap_to_pay:
                  value:
                    message: OK
                    code: 200
                    current_time: '2025-09-10T09:12:58+0100'
                    source:
                      Customer:
                        external_id: user
                      Source:
                        object: TAP_TO_PAY
                        uuid: FC9B44CE-FF5A-4566-968D-512B208D0374
                        masked_pan: 540205******6010
                        additional: null
                        validation_date: '2025-07-30 10:39:45'
                        creation_date: '2025-07-28 14:20:02'
                ecopaynet:
                  value:
                    message: OK
                    code: 200
                    current_time: '2025-09-10T09:12:58+0100'
                    source:
                      Customer:
                        external_id: user
                      Source:
                        object: ECOPAYNET
                        uuid: FC9B44CE-FF5A-4566-968D-512B208D0374
                        bin: 476173
                        last4: '0016'
                        additional: null
                        validation_date: '2025-07-30 10:39:45'
                        creation_date: '2025-07-28 14:20:02'
        '404':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Not Found
                    code: 404
                    details: Source not found
              schema:
                $ref: '#/components/schemas/ResponseKO'
          description: Not Found
      summary: Ver medio de pago por UUID
      description: Permite obtener los datos de un **source** únicamente a partir de su UUID. El sistema determina automáticamente el tipo de source y devuelve siempre la información dentro de la clave fija `source`.
      x-description-i18n:
        eng: Retrieve a **source** using only its UUID. The system automatically determines the source type and always returns the information under the fixed `source` key.
      x-summary-i18n:
        eng: View payment method by UUID
    delete:
      operationId: delete-source
      tags:
        - Common operations
        - Operaciones comunes
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: identifier
          in: path
          required: true
          example: card
          schema:
            type: string
            enum:
              - card
              - dynamic_card
              - bank
              - paypal
          description: Tipo del medio de pago (source).
          x-description-i18n:
            eng: Payment method (source type).
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                source_uuid:
                  $ref: '#/components/schemas/TapToPay/properties/uuid'
                customer_external_id:
                  $ref: '#/components/schemas/Customer/properties/external_id'
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                source_uuid: C10721E7-1404-45DC-8762-351DD9945D1D
                customer_external_id: user1234
              required:
                - signature
                - source_uuid
                - customer_external_id
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    code: 200
                    current_time: '2017-01-12T09:12:58+0100'
                    message: OK
              schema:
                $ref: '#/components/schemas/ResponseOK'
          description: OK
      summary: Eliminar medio de pago
      description: 'Mediante este endpoint se puede eliminar un medio de pago almacenado (tarjeta, tarjeta dinámica, cuenta bancaria o PayPal).'
      x-description-i18n:
        eng: 'This endpoint deletes a stored payment method (credit card, dynamic card, bank account, or PayPal).'
      x-summary-i18n:
        eng: Delete payment method
  '/customer/{customer_ext_id}/sources':
    get:
      operationId: list-customer-sources
      tags:
        - Common operations
        - Operaciones comunes
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: customer_ext_id
          in: path
          required: true
          example: 123fd2
          schema:
            type: string
          description: ID externo otorgado por el comercio para identificar de forma única a un usuario.
          x-description-i18n:
            eng: External ID provided by the merchant to uniquely identify a customer.
        - name: sourceType
          in: query
          required: false
          example: card
          schema:
            type: string
            enum:
              - card
              - dynamic_card
              - bank
              - paypal
              - tap_to_pay
              - ecopaynet
          description: 'Tipos de sources que se desean obtener, se pueden indicar múltiples valores separados por coma. Si no se indica, se devolverán **todos los tipos**.'
          x-description-i18n:
            eng: Source type.
        - name: status
          in: query
          required: false
          example: VALIDATED
          schema:
            type: string
            enum:
              - VALIDATED
              - ALL
          description: |-
            Especifica qué sources se obtendrán:

            - `VALIDATED` → sólo devolverá aquellos sources validados correctamente cuando se guardaron o que se han podido utilizar en un pago correcto. Este es el valor por defecto.

            - `ALL` → devolverá todos los sources, tanto los validados como los no validados.
          x-description-i18n:
            eng: |-
              Selects which sources will be returned:

              - `VALIDATED` → Only validated sources will be returned (checked against bank service or used in a successful payment). This is the default.

              - `ALL` → All sources will be returned, validated and unvalidated.
        - name: unique
          in: query
          required: false
          example: false
          schema:
            type: boolean
          description: |-
            Indica si las cuentas o tarjetas deben devolverse con repetición (una por cada operación) o sin repetición (una sola vez cada source).

            - `true` → sólo devolverá una ocurrencia por source.

            - `false` → devolverá una entrada por cada uso del source en pagos. Este es el valor por defecto.
          x-description-i18n:
            eng: |-
              Decides whether repeated sources need to be returned.

              - `true` → no repetition, one occurrence per source.

              - `false` → sources may appear multiple times if used in multiple payments. This is the default.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - type: object
                    properties:
                      sources:
                        type: object
                        allOf:
                          - allOf:
                              - properties:
                                  card:
                                    type: array
                                    items:
                                      $ref: '#/components/schemas/TransactionSourceCard/properties/Source'
                          - allOf:
                              - properties:
                                  dynamic_card:
                                    type: array
                                    items:
                                      $ref: '#/components/schemas/DynamicCard'
                          - allOf:
                              - properties:
                                  bank:
                                    type: array
                                    items:
                                      $ref: '#/paths/~1payment-method~1bank/post/responses/200/content/application~1json/schema/allOf/1/properties/Source'
                          - allOf:
                              - properties:
                                  paypal:
                                    type: array
                                    items:
                                      $ref: '#/components/schemas/Paypal'
                          - allOf:
                              - properties:
                                  tap_to_pay:
                                    type: array
                                    items:
                                      $ref: '#/components/schemas/TapToPay'
                          - allOf:
                              - properties:
                                  ecopaynet:
                                    type: array
                                    items:
                                      $ref: '#/components/schemas/Ecopaynet'
              examples:
                card:
                  value:
                    message: OK
                    code: 200
                    current_time: '2017-01-12T09:12:58+0100'
                    sources:
                      card:
                        - additional: null
                          bank: 'SERVIRED, SOCIEDAD ESPANOLA DE MEDIOS DE PAGO, S.A.'
                          bin: 454881
                          brand: VISA
                          country: '724'
                          creation_date: '2020-02-18 17:22:56'
                          expire_month: '12'
                          expire_year: '21'
                          holder: Test user
                          is_saved: true
                          last4: '0004'
                          object: CARD
                          token: ebc9b5ffa2efcf74197734a071192817e6f2a3fc15f49c4b1bdb6edc46b16e3ab4109498bff8e6ba00fb6d2bd1838afbea67095c4caaa2f46e4acf4d5851884c
                          type: CREDIT
                          uuid: 90F358C9-7D3F-4334-A60D-1717CC1FBF5B
                        - additional: null
                          bank: 'SERVIRED, SOCIEDAD ESPANOLA DE MEDIOS DE PAGO, S.A.'
                          bin: 533821
                          brand: MASTERCARD
                          country: '724'
                          creation_date: '2020-02-18 17:22:56'
                          expire_month: '04'
                          expire_year: '23'
                          holder: Test user
                          is_saved: true
                          last4: '0004'
                          object: CARD
                          token: ad49b5b1a2efcf74197734a071192817e6f2a3fc15f49c4b1bdb6edc46b16e3ab4109498bff8e6ba00fb6d2bd1838afbea67095c4caaa2f46e4acf4d58516cba
                          type: CREDIT
                          uuid: 0FDE261B-0E76-499D-A394-B6DCF6C03C56
                dynamic_card:
                  value:
                    message: OK
                    code: 200
                    current_time: '2017-01-12T09:12:58+0100'
                    sources:
                      dynamic_card:
                        - object: DYNAMIC_CARD
                          uuid: 1F405EA3-9798-42A6-9E87-BD347EF67F55
                          created_at: '2025-09-08 19:35:20'
                          dpan: 489537******2430
                          last4: 1111
                          brand: VISA
                          bank: U.S. Region
                          country: US
                          type: DEBIT
                          brand_description: Visa Signature Preferred
                          prepaid: null
                          origin: SCHEME_TOKEN
                          additional: null
                          validation_date: '2025-09-08 19:35:20'
                          expire_month: '12'
                          expire_year: '25'
                        - object: DYNAMIC_CARD
                          uuid: 0FDE261B-0E76-499D-A394-B6DCF6C03C56
                          created_at: '2025-09-08 19:35:20'
                          dpan: 489537******2430
                          last4: 1111
                          brand: VISA
                          bank: U.S. Region
                          country: US
                          type: DEBIT
                          brand_description: Visa Signature Preferred
                          prepaid: null
                          origin: SCHEME_TOKEN
                          additional: null
                          validation_date: '2025-09-08 19:35:20'
                          expire_month: '12'
                          expire_year: '25'
                bank:
                  value:
                    message: OK
                    code: 200
                    current_time: '2023-04-20T12:49:29+0200'
                    sources:
                      bank:
                        - object: BANK
                          uuid: 2D728428-2C4D-42A7-83D3-FDD14819376B
                          account_holder: Joe
                          iban: ES9990005000600000000322
                          created_at: '2023-04-19 16:13:25'
                          additional: null
                        - object: BANK
                          uuid: 9355B265-B68F-4407-A9C4-EBDF63FD6228
                          account_holder: John Doe
                          iban: ES9030350000070000000202
                          created_at: '2023-04-20 11:25:22'
                          additional: Main account
                paypal:
                  value:
                    message: OK
                    code: 200
                    current_time: '2023-04-20T12:49:29+0200'
                    sources:
                      paypal:
                        - object: PAYPAL
                          uuid: FC9B44CE-FF5A-4566-968D-512B208D0374
                          payer_id: 69UPSZGGZN3AJ
                          first_name: John
                          last_name: Doe
                          email: sb-gz6v144699557@business.example.com
                          country_alpha2: ES
                          additional: null
                          validation_date: '2025-07-30 10:39:45'
                          creation_date: '2025-07-28 14:20:02'
                        - object: PAYPAL
                          uuid: 9355B265-B68F-4407-A9C4-EBDF63FD6228
                          payer_id: 69UPSZGGZN3AJ
                          first_name: John
                          last_name: Doe
                          email: sb-gz6v144699557@business.example.com
                          country_alpha2: ES
                          additional: null
                          validation_date: '2025-07-30 10:39:45'
                          creation_date: '2025-07-28 14:20:02'
                tap_to_pay:
                  value:
                    message: OK
                    code: 200
                    current_time: '2025-09-08T19:40:00+0200'
                    sources:
                      tap_to_pay:
                        - object: TAP_TO_PAY
                          uuid: 1F405EA3-9798-42A6-9E87-BD347EF67F55
                          masked_pan: 489537******2430
                          additional: 'Device: Android POS #3'
                          validation_date: '2025-09-08 19:35:20'
                          creation_date: '2025-09-08 19:30:00'
                        - object: TAP_TO_PAY
                          uuid: 0FDE261B-0E76-499D-A394-B6DCF6C03C56
                          masked_pan: 411111******1111
                          additional: null
                          validation_date: null
                          creation_date: '2025-09-08 18:10:05'
                ecopaynet:
                  value:
                    message: OK
                    code: 200
                    current_time: '2025-07-30T10:40:00+0200'
                    sources:
                      ecopaynet:
                        - object: ECOPAYNET
                          uuid: A1B2C3D4-E5F6-4789-ABCD-0123456789EF
                          bin: 457845
                          last4: '1234'
                          additional: Ecopaynet card
                          validation_date: '2025-07-30 10:39:45'
                          creation_date: '2025-07-28 14:20:02'
                        - object: ECOPAYNET
                          uuid: FEDCBA98-7654-4321-ABCD-001122334455
                          bin: 532198
                          last4: '9876'
                          additional: null
                          validation_date: null
                          creation_date: '2025-07-29 09:15:10'
                all_sources:
                  value:
                    message: OK
                    code: 200
                    current_time: '2025-09-08T19:40:00+0200'
                    sources:
                      card:
                        - object: CARD
                          uuid: 90F358C9-7D3F-4334-A60D-1717CC1FBF5B
                          type: CREDIT
                          brand: VISA
                          country: '724'
                          holder: Test User
                          bin: 454881
                          last4: '0004'
                          expire_month: '12'
                          expire_year: '25'
                          token: ebc9b5ffa2efcf74197734a071192817e6f2a3fc15f49c4b1bdb6edc46b16e3ab4109498bff8e6ba00fb6d2bd1838afbea67095c4caaa2f46e4acf4d5851884c
                          origin: PAYMENT_CARD
                          additional: null
                          bank: BBVA
                          is_saved: true
                          creation_date: '2020-02-18 17:22:56'
                          tokenization_service_uuid: null
                          validation_date: '2025-09-08 14:00:00'
                          is_blacklisted: false
                          prepaid: null
                          brand_description: null
                          cof:
                            is_available: false
                          is_vts_mdes_enabled: null
                      dinamic_cards:
                        - object: DYNAMIC_CARD
                          uuid: 1F405EA3-9798-42A6-9E87-BD347EF67F55
                          created_at: '2025-09-08 19:35:20'
                          dpan: 489537******2430
                          last4: 1111
                          brand: VISA
                          bank: U.S. Region
                          country: US
                          type: DEBIT
                          brand_description: Visa Signature Preferred
                          prepaid: null
                          origin: SCHEME_TOKEN
                          additional: null
                          validation_date: '2025-09-08 19:35:20'
                          expire_month: '12'
                          expire_year: '25'
                      banks:
                        - object: BANK
                          uuid: 2D728428-2C4D-42A7-83D3-FDD14819376B
                          account_holder: Joe
                          iban: ES9990005000600000000322
                          created_at: '2025-09-08 10:10:10'
                          additional: null
                          validation_date: null
                      paypals:
                        - object: PAYPAL
                          uuid: FC9B44CE-FF5A-4566-968D-512B208D0374
                          payer_id: 69UPSZGGZN3AJ
                          first_name: John
                          last_name: Doe
                          email: john.doe@example.com
                          country_alpha2: ES
                          additional: null
                          validation_date: '2025-07-30 10:39:45'
                          creation_date: '2025-07-28 14:20:02'
                      tap_to_pays:
                        - object: TAP_TO_PAY
                          uuid: 1F405EA3-9798-42A6-9E87-BD347EF67F55
                          masked_pan: 489537******2430
                          additional: 'Device: Android POS #3'
                          validation_date: '2025-09-08 19:35:20'
                          creation_date: '2025-09-08 19:30:00'
                      ecopaynets:
                        - object: ECOPAYNET
                          uuid: A1B2C3D4-E5F6-4789-ABCD-0123456789EF
                          bin: 457845
                          last4: '1234'
                          additional: Ecopaynet card
                          validation_date: '2025-07-30 10:39:45'
                          creation_date: '2025-07-28 14:20:02'
      summary: Listar medios de pago de un usuario
      description: |-
        Mediante este método se obtiene el listado de **sources** almacenados en el sistema para un usuario dado.

        El `customer_ext_id` debe coincidir con el que se utilizó al guardar el source en el sistema o al crear la orden de pago.
      x-description-i18n:
        eng: |-
          Retrieves all **sources** (cards, dynamic cards, bank accounts, etc.) associated to a given customer.

          The `customer_ext_id` must match the one used when the source was stored or when the payment order was created.
      x-summary-i18n:
        eng: List customer payment methods
  '/customer/{customer_ext_id}/{payment-method}':
    get:
      operationId: list-customer-sources-by-type
      tags:
        - Common operations
        - Operaciones comunes
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: customer_ext_id
          in: path
          required: true
          example: 123fd2
          schema:
            type: string
          description: ID externo otorgado por el comercio para identificar de forma única a un usuario.
          x-description-i18n:
            eng: External ID provided by the merchant to uniquely identify a customer.
        - name: payment-method
          in: path
          required: true
          example: cards
          schema:
            type: string
            enum:
              - cards
              - dynamic_cards
              - banks
              - paypals
          description: Tipo de medio de pago (source).
          x-description-i18n:
            eng: Source type.
        - name: status
          in: query
          required: false
          example: VALIDATED
          schema:
            type: string
            enum:
              - VALIDATED
              - ALL
          description: |-
            Especifica qué sources se obtendrán:

            - `VALIDATED` → sólo devolverá aquellos sources validados correctamente cuando se guardaron o que se han podido utilizar en un pago correcto. Este es el valor por defecto.

            - `ALL` → devolverá todos los sources, tanto los validados como los no validados.
          x-description-i18n:
            eng: |-
              Selects which sources will be returned:

              - `VALIDATED` → Only validated sources will be returned (checked against bank service or used in a successful payment). This is the default.

              - `ALL` → All sources will be returned, validated and unvalidated.
        - name: unique
          in: query
          required: false
          example: false
          schema:
            type: boolean
          description: |-
            Indica si las cuentas o tarjetas deben devolverse con repetición (una por cada operación) o sin repetición (una sola vez cada source).

            - `true` → sólo devolverá una ocurrencia por source.

            - `false` → devolverá una entrada por cada uso del source en pagos. Este es el valor por defecto.
          x-description-i18n:
            eng: |-
              Decides whether repeated sources need to be returned.

              - `true` → no repetition, one occurrence per source.

              - `false` → sources may appear multiple times if used in multiple payments. This is the default.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                oneOf:
                  - title: Cards
                    allOf:
                      - allOf:
                          - $ref: '#/components/schemas/ResponseOK'
                          - properties:
                              cards:
                                type: array
                                items:
                                  $ref: '#/components/schemas/TransactionSourceCard/properties/Source'
                  - title: Dynamic cards
                    allOf:
                      - allOf:
                          - $ref: '#/components/schemas/ResponseOK'
                          - properties:
                              dynamic_cards:
                                type: array
                                items:
                                  $ref: '#/components/schemas/DynamicCard'
                  - title: Banks
                    allOf:
                      - allOf:
                          - $ref: '#/components/schemas/ResponseOK'
                          - properties:
                              banks:
                                type: array
                                items:
                                  $ref: '#/paths/~1payment-method~1bank/post/responses/200/content/application~1json/schema/allOf/1/properties/Source'
                  - title: Paypal
                    allOf:
                      - allOf:
                          - $ref: '#/components/schemas/ResponseOK'
                          - properties:
                              paypals:
                                type: array
                                items:
                                  $ref: '#/components/schemas/Paypal'
              examples:
                card:
                  value:
                    message: OK
                    code: 200
                    current_time: '2017-01-12T09:12:58+0100'
                    cards:
                      - additional: null
                        bank: 'SERVIRED, SOCIEDAD ESPANOLA DE MEDIOS DE PAGO, S.A.'
                        bin: 454881
                        brand: VISA
                        country: '724'
                        creation_date: '2020-02-18 17:22:56'
                        expire_month: '12'
                        expire_year: '21'
                        holder: Test user
                        is_saved: true
                        last4: '0004'
                        object: CARD
                        token: ebc9b5ffa2efcf74197734a071192817e6f2a3fc15f49c4b1bdb6edc46b16e3ab4109498bff8e6ba00fb6d2bd1838afbea67095c4caaa2f46e4acf4d5851884c
                        type: CREDIT
                        uuid: 90F358C9-7D3F-4334-A60D-1717CC1FBF5B
                      - additional: null
                        bank: 'SERVIRED, SOCIEDAD ESPANOLA DE MEDIOS DE PAGO, S.A.'
                        bin: 533821
                        brand: MASTERCARD
                        country: '724'
                        creation_date: '2020-02-18 17:22:56'
                        expire_month: '04'
                        expire_year: '23'
                        holder: Test user
                        is_saved: true
                        last4: '0004'
                        object: CARD
                        token: ad49b5b1a2efcf74197734a071192817e6f2a3fc15f49c4b1bdb6edc46b16e3ab4109498bff8e6ba00fb6d2bd1838afbea67095c4caaa2f46e4acf4d58516cba
                        type: CREDIT
                        uuid: 0FDE261B-0E76-499D-A394-B6DCF6C03C56
                dynamic_card:
                  value:
                    message: OK
                    code: 200
                    current_time: '2017-01-12T09:12:58+0100'
                    dynamic_cards:
                      - object: DYNAMIC_CARD
                        uuid: 1F405EA3-9798-42A6-9E87-BD347EF67F55
                        created_at: '2025-09-08 19:35:20'
                        dpan: 489537******2430
                        last4: 1111
                        brand: VISA
                        bank: U.S. Region
                        country: US
                        type: DEBIT
                        brand_description: Visa Signature Preferred
                        prepaid: null
                        origin: SCHEME_TOKEN
                        additional: null
                        validation_date: '2025-09-08 19:35:20'
                        expire_month: '12'
                        expire_year: '25'
                      - object: DYNAMIC_CARD
                        uuid: 0FDE261B-0E76-499D-A394-B6DCF6C03C56
                        created_at: '2025-09-08 19:35:20'
                        dpan: 489537******2430
                        last4: 1111
                        brand: VISA
                        bank: U.S. Region
                        country: US
                        type: DEBIT
                        brand_description: Visa Signature Preferred
                        prepaid: null
                        origin: SCHEME_TOKEN
                        additional: null
                        validation_date: '2025-09-08 19:35:20'
                        expire_month: '12'
                        expire_year: '25'
                bank:
                  value:
                    message: OK
                    code: 200
                    current_time: '2023-04-20T12:49:29+0200'
                    banks:
                      - object: BANK
                        uuid: 2D728428-2C4D-42A7-83D3-FDD14819376B
                        account_holder: Joe
                        iban: ES9990005000600000000322
                        created_at: '2023-04-19 16:13:25'
                        additional: null
                      - object: BANK
                        uuid: 9355B265-B68F-4407-A9C4-EBDF63FD6228
                        account_holder: John Doe
                        iban: ES9030350000070000000202
                        created_at: '2023-04-20 11:25:22'
                        additional: Main account
                paypal:
                  value:
                    message: OK
                    code: 200
                    current_time: '2023-04-20T12:49:29+0200'
                    paypals:
                      - object: PAYPAL
                        uuid: FC9B44CE-FF5A-4566-968D-512B208D0374
                        payer_id: 69UPSZGGZN3AJ
                        first_name: John
                        last_name: Doe
                        email: sb-gz6v144699557@business.example.com
                        country_alpha2: ES
                        additional: null
                        validation_date: '2025-07-30 10:39:45'
                        creation_date: '2025-07-28 14:20:02'
                      - object: PAYPAL
                        uuid: 9355B265-B68F-4407-A9C4-EBDF63FD6228
                        payer_id: 69UPSZGGZN3AJ
                        first_name: John
                        last_name: Doe
                        email: sb-gz6v144699557@business.example.com
                        country_alpha2: ES
                        additional: null
                        validation_date: '2025-07-30 10:39:45'
                        creation_date: '2025-07-28 14:20:02'
      summary: Listar medios de pago de un usuario por tipo
      description: |-
        Mediante este método se obtiene el listado de **sources** almacenados en el sistema para un usuario dado.

        El `customer_ext_id` debe coincidir con el que se utilizó al guardar el source en el sistema o al crear la orden de pago.
      x-description-i18n:
        eng: |-
          Retrieves all **sources** (cards, dynamic cards, bank accounts, etc.) associated to a given customer.

          The `customer_ext_id` must match the one used when the source was stored or when the payment order was created.
      x-summary-i18n:
        eng: List customer payment methods by type
      deprecated: true
  /payment-method/halcash:
    post:
      operationId: create-halcash-payment
      tags:
        - UNNAMED
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                additional:
                  type: string
                  description: Información adicional opcional
                  nullable: true
                country_numeric_code:
                  type: string
                  description: Código numérico del país
                customer_ext_id:
                  type: string
                  description: ID externo del cliente
                phone_number:
                  type: string
                  description: Número de teléfono
                sender_name:
                  type: string
                  description: Nombre
                signature:
                  type: string
                  description: Firma del cliente
              example:
                additional: optional additional info
                country_numeric_code: '724'
                customer_ext_id: 12345678A
                phone_number: '665920704'
                sender_name: Patricio
                signature: c6f00988430dbc8e83a7bc7ab5256346
              required:
                - signature
                - customer_ext_id
                - sender_name
                - phone_number
                - country_numeric_code
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    Customer:
                      external_id: test
                    Source:
                      additional: null
                      country_numeric_code: '724'
                      created_at: '2020-04-17 12:13:03'
                      phone_number: '665920704'
                      sender_name: Paco Perez
                      updated_at: '2020-04-17 12:13:03'
                      uuid: 14578045-C7EB-4E63-BA1D-1E5AF19789BE
                    code: 200
                    current_time: '2020-04-20T12:17:48+0200'
                    message: OK
              schema:
                type: object
                properties:
                  Customer:
                    $ref: '#/components/schemas/Customer'
                  Source:
                    properties:
                      additional:
                        type: string
                        description: Información adicional
                        nullable: true
                      country_numeric_code:
                        type: string
                        description: Código numérico del país
                      created_at:
                        type: string
                        description: Fecha de creación
                      phone_number:
                        type: string
                        description: Número de teléfono
                      sender_name:
                        type: string
                        description: Nombre
                      updated_at:
                        type: string
                        description: Fecha de última modificación
                      uuid:
                        type: string
                        description: UUID del medio de pago.
                    required:
                      - uuid
                      - sender_name
                      - phone_number
                      - country_numeric_code
                      - additional
                      - created_at
                      - updated_at
                    type: object
          description: OK
      summary: Crear medio de pago HalCash
      description: Crea una medio de pago HalCash
      x-description-i18n:
        eng: Create HalCash source
      x-summary-i18n:
        eng: Create HalCash source
  /payment-method/halcash/additional:
    put:
      operationId: update-halcash-additional
      tags:
        - UNNAMED
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                additional:
                  type: string
                  description: Información adicional
                signature:
                  type: string
                  description: Firma del cliente
                uuid:
                  type: string
                  description: UUID del medio de pago
              example:
                additional: additional info
                signature: c6f00988430dbc8e83a7bc7ab5256346
                uuid: 1f405ea3-9798-42a6-9e87-bd347ef67f55
              required:
                - signature
                - uuid
                - additional
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    Customer:
                      external_id: test
                    Source:
                      additional: some additional info
                      country_numeric_code: '724'
                      created_at: '2020-04-17 12:13:03'
                      phone_number: '665920704'
                      sender_name: Paco Perez
                      updated_at: '2020-04-17 12:13:03'
                      uuid: 14578045-C7EB-4E63-BA1D-1E5AF19789BE
                    code: 200
                    current_time: '2020-04-20T12:33:20+0200'
                    message: OK
              schema:
                type: object
                properties:
                  Customer:
                    $ref: '#/components/schemas/Customer'
                  Source:
                    $ref: '#/paths/~1payment-method~1halcash/post/responses/200/content/application~1json/schema/properties/Source'
          description: OK
      summary: Actualizar additional
      description: Actualiza la información adicional de un medio de pago HalCash
      x-description-i18n:
        eng: Update additional information on a HalCash payment method
      x-summary-i18n:
        eng: Update additional
  '/payment-method/halcash/{uuid}':
    get:
      operationId: get-halcash-payment
      tags:
        - UNNAMED
      parameters:
        - name: uuid
          in: path
          required: true
          example: 1f405ea3-9798-42a6-9e87-bd347ef67f55
          schema:
            type: string
          description: ''
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    Customer:
                      external_id: test
                    Source:
                      additional: null
                      country_numeric_code: '724'
                      created_at: '2020-04-17 12:13:03'
                      phone_number: '665920704'
                      sender_name: Paco Perez
                      updated_at: '2020-04-17 12:13:03'
                      uuid: 14578045-C7EB-4E63-BA1D-1E5AF19789BE
                    code: 200
                    current_time: '2020-04-20T12:17:48+0200'
                    message: OK
              schema:
                type: object
                properties:
                  Customer:
                    $ref: '#/components/schemas/Customer'
                  Source:
                    $ref: '#/paths/~1payment-method~1halcash/post/responses/200/content/application~1json/schema/properties/Source'
          description: OK
      summary: Obtener medio de pago HalCash
      description: Obten una medio de pago HalCash por su UUID
      x-description-i18n:
        eng: Get HalCash source by UUID
      x-summary-i18n:
        eng: Get HalCash source
    delete:
      operationId: delete-halcash-payment
      tags:
        - UNNAMED
      parameters:
        - name: uuid
          in: path
          required: true
          example: 1f405ea3-9798-42a6-9e87-bd347ef67f55
          schema:
            type: string
          description: ''
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  type: string
                  description: Firma del cliente
              example:
                signature: c6f00988430dbc8e83a7bc7ab5256346
              required:
                - signature
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    Customer:
                      external_id: test
                    Source:
                      additional: null
                      country_numeric_code: '724'
                      created_at: '2020-04-17 12:13:03'
                      phone_number: '665920704'
                      sender_name: Paco Perez
                      updated_at: '2020-04-17 12:13:03'
                      uuid: 14578045-C7EB-4E63-BA1D-1E5AF19789BE
                    code: 200
                    current_time: '2020-04-20T12:28:40+0200'
                    message: OK
              schema:
                type: object
                properties:
                  Customer:
                    $ref: '#/components/schemas/Customer'
                  Source:
                    $ref: '#/paths/~1payment-method~1halcash/post/responses/200/content/application~1json/schema/properties/Source'
          description: OK
      summary: Eliminar medio de pago HalCash
      description: Elimina un medio de pago HalCash por su UUID
      x-description-i18n:
        eng: Delete HalCash source by UUID
      x-summary-i18n:
        eng: Delete HalCash source
  '/payment/bizum/{token}':
    get:
      operationId: bizum-payment
      tags:
        - Pagos
        - Payments
      parameters:
        - name: token
          in: path
          required: true
          example: ebc9b5ffa2efcf74197734a071192817e6f2a3fc15f49c4b1bdb6edc46b16e3ab4109498bff8e6ba00fb6d2bd1838afbea67095c4caaa2f46e4acf4d5851884c
          schema:
            type: string
          description: El token de la orden.
          x-description-i18n:
            eng: The token of the order.
      responses:
        '200':
          content:
            text/html:
              examples:
                response:
                  value: ''
          description: OK
      summary: Bizum
      description: |-
        El usuario es redirigido a la página de pago de Bizum, donde deberá introducir el número de teléfono de la cuenta desde donde desea pagar.

        Esta modalidad de pago solo está disponible en REDSYS y será necesario activarlo previamente: póngase en contacto con soporte para activar esta configuración.

        En el entorno SANDBOX, se puede simular pagos exitosos o rechazados utilizando los siguientes valores como número de teléfono, cuando se solicite:
        - Pago exitoso: `700000000`
        - Pago rechazado: `ko@ko.ko`
      x-description-i18n:
        eng: |-
          The user is redirected to the Bizum payment page, where they must enter the phone number of the account from which they wish to pay.

          This payment method is only available in REDSYS and it will be necessary to activate it previously: contact support to activate this configuration.

          In SANDBOX environment, successful and refused payments can be simulated by entering the following values when the payment process asks for the phone number:
          - Successful payment: `700000000`
          - Refused payment: `ko@ko.ko`
      x-summary-i18n:
        eng: Bizum
  /payment/cancellation:
    post:
      operationId: cancel-deferred-payment
      tags:
        - Pagos
        - Payments
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                order_uuid:
                  $ref: '#/components/schemas/Order/properties/uuid'
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                order_uuid: 1f405ea3-9798-42a6-9e87-bd347ef67f55
              required:
                - signature
                - order_uuid
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-28T13:00:42+0100'
                    order:
                      uuid: 35BB6367-83DB-46FA-BDCE-066E0BA73D8A
                      created: '2021-12-28T13:00:09+0100'
                      created_from_client_timezone: '2021-12-28T14:00:09+0200'
                      amount: 100
                      currency: 978
                      paid: false
                      status: CANCELLED
                      safe: true
                      refunded: 0
                      additional: ''
                      service: REDSYSPSD2
                      service_uuid: 584FD0B2-09C7-476D-8B90-77B0E1F0F892
                      customer: test
                      cof_txnid: '2112281300340'
                      transactions:
                        - uuid: 983592AE-CD40-409E-B991-DF497513F8CD
                          created: '2021-12-28T13:00:14+0100'
                          created_from_client_timezone: '2021-12-28T14:00:14+0200'
                          operative: DEFERRED
                          amount: 100
                          authorization: '662127'
                          processor_id: '1534790351'
                          status: SUCCESS
                          error: NONE
                          source:
                            object: CARD
                            uuid: 66216697-3AB1-4455-835A-B9A9B98DD6EE
                            type: DEBIT
                            token: 892640bc4d644e0419108d65656ae4a0e57a7d3c404df460261957ef4e8bcf4f21e8f1424f648ceefccf81c6233c38f2f961351f6eaa1c75c98ee7bc63d4a1bb
                            brand: VISA
                            country: ES
                            holder: TRES
                            bin: 491801
                            last4: '4602'
                            is_saved: false
                            expire_month: '12'
                            expire_year: '30'
                            additional: null
                            bank: 'SERVIRED, SOCIEDAD ESPANOLA DE MEDIOS DE PAGO, S.A.'
                            prepaid: false
                            validation_date: '2021-12-28 13:00:34'
                            creation_date: '2021-12-28 13:00:18'
                            brand_description: Electron
                          antifraud:
                            evaluation: TRUSTED
                            score: 0
                            risk_score: 10
                            fraud_score: 20
                            triggered_rules: []
                          device:
                            fingerprint: '344138326'
                            user_agent: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:95.0) Gecko/20100101 Firefox/95.0'
                          error_details: null
                        - uuid: 47239134-D160-4BD9-95B0-BC43B90CE3C4
                          created: '2021-12-28T13:00:42+0100'
                          created_from_client_timezone: '2021-12-28T14:00:42+0200'
                          operative: CANCELLATION
                          amount: 100
                          authorization: '662127'
                          processor_id: '1534790351'
                          status: SUCCESS
                          error: NONE
                          source:
                            object: CARD
                            uuid: 66216697-3AB1-4455-835A-B9A9B98DD6EE
                            type: DEBIT
                            token: 892640bc4d644e0419108d65656ae4a0e57a7d3c404df460261957ef4e8bcf4f21e8f1424f648ceefccf81c6233c38f2f961351f6eaa1c75c98ee7bc63d4a1bb
                            brand: VISA
                            country: ES
                            holder: Juan
                            bin: 491801
                            last4: '4602'
                            is_saved: false
                            expire_month: '12'
                            expire_year: '30'
                            additional: null
                            bank: 'SERVIRED, SOCIEDAD ESPANOLA DE MEDIOS DE PAGO, S.A.'
                            prepaid: false
                            validation_date: '2021-12-28 13:00:34'
                            creation_date: '2021-12-28 13:00:18'
                            brand_description: Electron
                          antifraud: null
                          device: null
                          error_details: null
                      token: null
                      ip: 127.0.0.1
                      reference: null
                      dynamic_descriptor: null
                      threeds_data:
                        version: '2.1'
                        flow: FULL
                        sca_requested: false
                        status: 'Y'
                        eci: null
                        exemption: null
                    client:
                      uuid: 42B8CF56-A7D7-4D4A-8349-4E27263CB2D5
                    validation_hash: e9e97e6514c2a2e2367207c4f39c25e6feb852788c412ec9814fa2a49c7cad57
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      order:
                        $ref: '#/components/schemas/Order'
                      client:
                        $ref: '#/components/schemas/Client'
                      extra_data:
                        $ref: '#/components/schemas/ExtraData'
                        nullable: true
                required:
                  - order
                  - client
          description: OK
        '429':
          content:
            application/json:
              examples:
                retry_after_one_minute:
                  summary: Reintentar después de un minuto
                  x-summary-i18n:
                    eng: Retry after one minute
                  value:
                    message: Too many requests
                    code: 429
                    details: 'Too many requests: Wait at least one minute between attempts.'
                retry_next_day:
                  summary: Reintentar al día siguiente
                  x-summary-i18n:
                    eng: Retry next day
                  value:
                    message: Too many requests
                    code: 429
                    details: 'Too many requests: Wait until the next day before the subsequent attempt.'
              schema:
                $ref: '#/paths/~1payment~1refund/post/responses/429/content/application~1json/schema'
          description: Demasiadas peticiones
          x-description-i18n:
            eng: Too many requests
      summary: Cancelación
      description: |-
        Mediante esta operativa se libera el saldo retenido por una operación DEFERRED.

        Si un intento de cancelación falla, se deberá esperar 1 minuto desde el último intento fallido antes de realizar un nuevo intento. En caso de que una cancelación sea exitosa, no será necesario esperar para realizar otro intento de cancelación. Sin embargo, si el sistema detecta 3 intentos fallidos en total, no se permitirán más intentos hasta el inicio del próximo día.

        A partir del tercer intento fallido, solo se permitirá un cancelación fallida al día. Esto significa que después de los tres primeros reintentos fallidos, si el siguiente también falla, deberá esperar hasta el siguiente día para realizar otro intento.
      x-description-i18n:
        eng: |-
          This endpoint frees the balance being held by a DEFERRED operative.

          If a cancellation attempt fails, you must wait 1 minute from the last unsuccessful attempt before making a new attempt. In case of a successful cancellation, it is not necessary to wait for another cancellation attempt. However, if the system detects 3 failed attempts in total, no further attempts will be allowed until the start of the next day.

          From the third unsuccessful attempt onwards, only one unsuccessful cancellation will be allowed per day. This means that after the first three failed retries, if the next one also fails, you will have to wait until the next day to make another attempt.
      x-summary-i18n:
        eng: Cancellation
  /payment/confirmation:
    post:
      operationId: confirm-deferred-payment
      tags:
        - Pagos
        - Payments
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                order_uuid:
                  $ref: '#/components/schemas/Order/properties/uuid'
                amount:
                  type: number
                  description: 'Importe enviado para la operación. Si no se indica, la confirmación es total. Puede indicarse si el servicio permite confirmar parcialmente.'
                  x-description-i18n:
                    eng: 'Amount to capture. If not provided, all remaining amount will be captured. Can be provided only if partial captures are supported.'
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                order_uuid: 1f405ea3-9798-42a6-9e87-bd347ef67f55
                amount: 100
              required:
                - signature
                - order_uuid
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-28T13:06:17+0100'
                    order:
                      uuid: A87B69C3-2693-4EA9-84FD-480D32E29119
                      created: '2021-12-28T13:05:46+0100'
                      created_from_client_timezone: '2021-12-28T14:05:46+0200'
                      amount: 100
                      currency: 978
                      paid: true
                      status: SUCCESS
                      safe: true
                      refunded: 0
                      additional: ''
                      service: REDSYSPSD2
                      service_uuid: 584FD0B2-09C7-476D-8B90-77B0E1F0F892
                      customer: test
                      cof_txnid: '2112281306080'
                      transactions:
                        - uuid: C204A8DC-C16E-4743-9C03-A6FDD41FBA51
                          created: '2021-12-28T13:05:51+0100'
                          created_from_client_timezone: '2021-12-28T14:05:51+0200'
                          operative: DEFERRED
                          amount: 100
                          authorization: '467437'
                          processor_id: '1534790352'
                          status: SUCCESS
                          error: NONE
                          source:
                            object: CARD
                            uuid: E60FF7B1-F3AF-40C7-B742-A67443CE5D5B
                            type: DEBIT
                            token: 892640bc4d644e0419108d65656ae4a0e57a7d3c404df460261957ef4e8bcf4f21e8f1424f648ceefccf81c6233c38f2f961351f6eaa1c75c98ee7bc63d4a1bb
                            brand: VISA
                            country: ES
                            holder: TRES
                            bin: 491801
                            last4: '4602'
                            is_saved: false
                            expire_month: '12'
                            expire_year: '30'
                            additional: null
                            bank: 'SERVIRED, SOCIEDAD ESPANOLA DE MEDIOS DE PAGO, S.A.'
                            prepaid: false
                            validation_date: '2021-12-28 13:06:08'
                            creation_date: '2021-12-28 13:05:54'
                            brand_description: Electron
                          antifraud:
                            evaluation: TRUSTED
                            score: 0
                            risk_score: 10
                            fraud_score: 20
                            triggered_rules: []
                          device:
                            fingerprint: '344138326'
                            user_agent: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:95.0) Gecko/20100101 Firefox/95.0'
                          error_details: null
                        - uuid: E8EEF28B-6480-4B10-8628-2689767BB1D5
                          created: '2021-12-28T13:06:16+0100'
                          created_from_client_timezone: '2021-12-28T14:06:16+0200'
                          operative: CONFIRMATION
                          amount: 100
                          authorization: '467437'
                          processor_id: '1534790352'
                          status: SUCCESS
                          error: NONE
                          source:
                            object: CARD
                            uuid: E60FF7B1-F3AF-40C7-B742-A67443CE5D5B
                            type: DEBIT
                            token: 892640bc4d644e0419108d65656ae4a0e57a7d3c404df460261957ef4e8bcf4f21e8f1424f648ceefccf81c6233c38f2f961351f6eaa1c75c98ee7bc63d4a1bb
                            brand: VISA
                            country: ES
                            holder: Jose
                            bin: 491801
                            last4: '4602'
                            is_saved: false
                            expire_month: '12'
                            expire_year: '30'
                            additional: null
                            bank: 'SERVIRED, SOCIEDAD ESPANOLA DE MEDIOS DE PAGO, S.A.'
                            prepaid: false
                            validation_date: '2021-12-28 13:06:08'
                            creation_date: '2021-12-28 13:05:54'
                            brand_description: Electron
                          antifraud: null
                          device: null
                          error_details: null
                      token: null
                      ip: 127.0.0.1
                      reference: null
                      dynamic_descriptor: null
                      threeds_data:
                        version: '2.1'
                        flow: FULL
                        sca_requested: false
                        status: 'Y'
                        eci: null
                        exemption: null
                    client:
                      uuid: 42B8CF56-A7D7-4D4A-8349-4E27263CB2D5
                    validation_hash: b34f457d184499c182f2066337aef97e568a6813fd50b0d23a9af88c921cb4d0
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      order:
                        $ref: '#/components/schemas/Order'
                      client:
                        $ref: '#/components/schemas/Client'
                      extra_data:
                        $ref: '#/components/schemas/ExtraData'
                        nullable: true
                required:
                  - order
                  - client
          description: OK
        '429':
          content:
            application/json:
              examples:
                retry_after_one_minute:
                  summary: Reintentar después de un minuto
                  x-summary-i18n:
                    eng: Retry after one minute
                  value:
                    message: Too many requests
                    code: 429
                    details: 'Too many requests: Wait at least one minute between attempts.'
                retry_next_day:
                  summary: Reintentar al día siguiente
                  x-summary-i18n:
                    eng: Retry next day
                  value:
                    message: Too many requests
                    code: 429
                    details: 'Too many requests: Wait until the next day before the subsequent attempt.'
              schema:
                $ref: '#/paths/~1payment~1refund/post/responses/429/content/application~1json/schema'
          description: Demasiadas peticiones
          x-description-i18n:
            eng: Too many requests
      summary: Confirmación
      description: |-
        Mediante esta operativa se confirma el saldo retenido por una operación DEFERRED.

        Si un intento de confirmación falla, se deberá esperar 1 minuto desde el último intento fallido antes de realizar un nuevo intento. En caso de que una confirmación sea exitosa, no será necesario esperar para realizar otro intento de confirmación. Sin embargo, si el sistema detecta 3 intentos fallidos en total, no se permitirán más intentos hasta el inicio del próximo día.

        A partir del tercer intento fallido, solo se permitirá un confirmación fallida al día. Esto significa que después de los tres primeros reintentos fallidos, si el siguiente también falla, deberá esperar hasta el siguiente día para realizar otro intento.
      x-description-i18n:
        eng: |-
          This endpoint charges the balance being held by a DEFERRED operative.

          If a confirmation attempt fails, it shall wait 1 minute from the last failed attempt before making a new attempt. In the event of a successful confirmation, it shall not be necessary to wait for another confirmation attempt. However, if the system detects 3 failed attempts in total, no further attempts will be allowed until the start of the next day.

          From the third unsuccessful attempt onwards, only one unsuccessful confirmation will be allowed per day. This means that after the first three failed retries, if the next one also fails, you will have to wait until the next day to make another attempt.
      x-summary-i18n:
        eng: Confirmation
  /payment/direct:
    post:
      operationId: webservice-payment
      tags:
        - Pagos
        - Payments
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                order_uuid:
                  $ref: '#/components/schemas/Order/properties/uuid'
                card_uuid:
                  $ref: '#/components/schemas/Card/properties/uuid'
                customer_ip:
                  type: string
                  description: IP del usuario.
                  x-description-i18n:
                    eng: IP of the user.
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                order_uuid: 1F405EA3-9798-42A6-9E87-BD347EF67F55
                card_uuid: C10721E7-1404-45DC-8762-351DD9945D1D
                customer_ip: 62.43.214.55
              required:
                - signature
                - order_uuid
                - get_source
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-28T13:51:27+0100'
                    order:
                      uuid: 91016708-967B-4B58-AD6B-94776C9F7220
                      created: '2021-12-28T13:51:18+0100'
                      created_from_client_timezone: '2021-12-28T14:51:18+0200'
                      amount: 1
                      currency: 978
                      paid: false
                      status: PENDING_CONFIRMATION
                      safe: false
                      refunded: 0
                      additional: ''
                      service: CREDORAX
                      service_uuid: 9A1BDCC8-DB30-4ED2-8523-62B330A67873
                      customer: test
                      cof_txnid: '887001863998888'
                      transactions:
                        - uuid: 580B8D14-FEB0-4DF4-BF81-7B22BFE0F26E
                          created: '2021-12-28T13:51:22+0100'
                          created_from_client_timezone: '2021-12-28T14:51:22+0200'
                          operative: DEFERRED
                          amount: 1
                          authorization: '055005'
                          processor_id: XZZ727f5d8192a0c0DCY5FKHSB3MVA6N
                          status: SUCCESS
                          error: NONE
                          source:
                            object: CARD
                            uuid: 7088F344-4261-4244-B0E3-CAEE35E4ADB3
                            type: ''
                            token: f41fdb5764efad821b2527aeaaf236e29d010771ea5a73ba26044526ec934f1100d8fc6930910ccd634ecc81c0aa7a1b3b721a739f2bac8aa4eedc0d529806d8
                            brand: VISA
                            country: US
                            holder: Paco
                            bin: 476173
                            last4: '0016'
                            is_saved: true
                            expire_month: 09
                            expire_year: '23'
                            additional: null
                            bank: ''
                            prepaid: ''
                            validation_date: '2021-12-28 13:51:26'
                            creation_date: '2021-12-28 13:50:45'
                            brand_description: null
                          antifraud: null
                          device: null
                          error_details: null
                      token: null
                      ip: 127.0.0.1
                      reference: null
                      dynamic_descriptor: null
                      threeds_data: null
                    client:
                      uuid: 42B8CF56-A7D7-4D4A-8349-4E27263CB2D5
                    validation_hash: 88e0b4e4ca902beb6df70693a0a94164be0485bab865dc168e3a1bf6bf5a71f7
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      order:
                        $ref: '#/components/schemas/Order'
                      client:
                        $ref: '#/components/schemas/Client'
                      extra_data:
                        $ref: '#/components/schemas/ExtraData'
                        nullable: true
                required:
                  - order
                  - client
          description: OK
        '303':
          content:
            application/json:
              examples:
                response:
                  value:
                    code: 303
                    details: 'https://api.paylands.com/v1/payment/tokenized/082a593dcccf5f3f37a563815659d4316154dff7f8139fabaa98bdffe9ce4375c5f9bb60825d1585738'
                    message: See Other
              schema:
                $ref: '#/paths/~1charge/post/responses/303/content/application~1json/schema'
                required:
                  - message
                  - code
                  - details
          description: Respuesta cuando el pago debe ser finalizado por el usuario de forma segura.
          x-description-i18n:
            eng: Response when the payment cannot finalize without the customer's intervention.
      summary: Por WebService
      description: |-
        En este método de pago no interviene el usuario. Para ello se necesita el uuid de la orden de pago y el uuid de una tarjeta previamente almacenada en el sistema.

        Si el comercio tiene el sistema antifraude activado, podría darse el caso que alguna regla se activase y fuese necesario finalizar el cobro por 3DS. En este caso, la respuesta devuelta contendrá la URL a la que debe redirigirse al usuario para autenticarse y poder finalizar el cobro.

        Bajo ningún concepto debe modificarse esta URL, puesto que su formato puede variar en futuras actualizaciones. Su uso se restringe a obtenerla del cuerpo de la petición y redirigir al usuario.

        La IP del usuario que solicita el pago debe indicarse en formato IPv4 o IPv6. Si no se indica, no se podrán ejecutar medidas antifraude relacionadas con la IP.
      x-description-i18n:
        eng: |-
          User intervention is not required when using this method. It will be necessary to provide the payment order UUID and the card's UUID which will have ben previously stored.

          If antifraud system is enabled, some rules could be triggered and it would be necessary user authentication (3DS) to finish the payment. In this case, response will contain the URL the user must be redirected to in order to authenticate himself and complete the payment.

          This URL must not be changed under any circumstances, as its syntax may change on future releases. It should only be retrieved from response's body and used to redirect the user.

          The IP address of the customer that is about to pay must be included in IPv4 or IPv6 format. Otherwise, antifraud measures related to the customer's IP won't be executed.
      x-summary-i18n:
        eng: WebService
  /payment/moto:
    post:
      operationId: api-moto-payment
      tags:
        - Pagos
        - Payments
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                order_uuid:
                  $ref: '#/components/schemas/Order/properties/uuid'
                method:
                  description: Origen de los datos de tarjeta (llamada telefónica o por correo).
                  x-description-i18n:
                    eng: Origin of the card details (phone call or through mail).
                  enum:
                    - MAIL
                    - PHONE
                  type: string
                card_holder:
                  $ref: '#/components/schemas/Card/properties/holder'
                card_pan:
                  $ref: '#/paths/~1charge/post/requestBody/content/application~1json/schema/properties/card_pan'
                card_expiry_month:
                  $ref: '#/components/schemas/Card/properties/expire_month'
                card_expiry_year:
                  $ref: '#/components/schemas/Card/properties/expire_year'
                card_cvv:
                  type: string
                  example: '123'
                  description: Número de verificación que aparece normalmente en el reverso de la tarjeta.
                  x-description-i18n:
                    eng: Card Verification Value (CVV) usually displayed on the back of the card.
                card_additional:
                  type: string
                  description: Descripción que se asociará a la tarjeta.
                  x-description-i18n:
                    eng: Description that will be assigned to the card.
                source_uuid:
                  $ref: '#/components/schemas/TapToPay/properties/uuid'
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                order_uuid: 1f405ea3-9798-42a6-9e87-bd347ef67f55
                method: MAIL
                card_holder: John Doe
                card_pan: '4111111111111111'
                card_expiry_month: '12'
                card_expiry_year: '19'
                card_cvv: '123'
                card_additional: card12345
              required:
                - signature
                - order_uuid
                - method
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-28T15:39:48+0100'
                    order:
                      uuid: C1056CCD-710F-4D63-8B14-F8CE855EBCE0
                      created: '2021-12-28T15:39:39+0100'
                      created_from_client_timezone: '2021-12-28T16:39:39+0200'
                      amount: 1
                      currency: 978
                      paid: true
                      status: SUCCESS
                      safe: false
                      refunded: 0
                      additional: ''
                      service: CREDORAX
                      service_uuid: 9A1BDCC8-DB30-4ED2-8523-62B330A67873
                      customer: test
                      cof_txnid: null
                      transactions:
                        - uuid: 308C23C4-0D9A-4D77-9215-78F8E049AA55
                          created: '2021-12-28T15:39:43+0100'
                          created_from_client_timezone: '2021-12-28T16:39:43+0200'
                          operative: AUTHORIZATION
                          amount: 1
                          authorization: '902659'
                          processor_id: XZZ7238bad41224c13BKOVJKG7BINFAB
                          status: SUCCESS
                          error: NONE
                          source:
                            object: CARD
                            uuid: E4F07D7E-6489-42B3-80C0-361BD40D5C11
                            type: ''
                            token: 83f69c969aa93a339e0c98ff81de96f4056c56dc035d48a9b99e8005071793734a16310dff4923f7fae8c248eaf6cf41df8b5b399e53559171711dc302e04943
                            brand: VISA
                            country: US
                            holder: Paco
                            bin: 411111
                            last4: '1111'
                            is_saved: true
                            expire_month: '12'
                            expire_year: '34'
                            additional: null
                            bank: 'JPMORGAN CHASE BANK, N.A.'
                            prepaid: ''
                            validation_date: '2021-12-28 15:39:47'
                            creation_date: '2021-12-28 15:39:43'
                            brand_description: null
                          antifraud: null
                          device: null
                          error_details: null
                      token: null
                      ip: null
                      reference: null
                      dynamic_descriptor: null
                      threeds_data: null
                    client:
                      uuid: 42B8CF56-A7D7-4D4A-8349-4E27263CB2D5
                    validation_hash: 32e999af0254635606ef70d1cb7b8148c0182c1b75c85a73af27cb676563882d
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      order:
                        $ref: '#/components/schemas/Order'
                      client:
                        $ref: '#/components/schemas/Client'
                      extra_data:
                        $ref: '#/components/schemas/ExtraData'
                        nullable: true
                required:
                  - order
                  - client
          description: OK
      summary: Pago MoTo por API
      description: |-
        Este método permite realizar el pago de una orden con los datos de pago obtenidos mediante correo o teléfono. Esta operación no requerirá autenticación, ya que es una operación exenta de PSD2. Sólo usable por clientes PCI.

        En caso de tener activado el antifraude, las órdenes consideradas de riesgo se procesarán sin ninguna restricción adicional.

        Para llevar a cabo este pago será necesario indicar la tarjeta que se va a emplear. Hay dos formas para ello: indicando los datos de tarjeta por separado (`card_holder`, `card_pan`, `card_expire_month`, `card_expire_year`, y opcionalmente, con `card_cvv` y `card_additional`) o, si la tarjeta ya fue tokenizada previamente, indicando su uuid en el campo `source_uuid` únicamente.
      x-description-i18n:
        eng: |-
          This method allows you to pay for an order with the payment data obtained by mail or telephone. This operation will not require authentication, as it is a PSD2-exempt operation. It is only usable if you are PCI compliant.

          If anti-fraud is activated, orders considered risky will be processed without any additional restrictions.

          To carry out this payment it will be necessary to indicate the card to be used. There are two ways to do this: indicating the card data separately (`card_holder`, `card_pan`, `card_expire_month`, `card_expire_year`, and optionally with `card_cvv` and `card_additional`) or, if the card is already tokenized, indicating its uuid in the `source_uuid` field only.
      x-summary-i18n:
        eng: MoTo payment via API
  /payment/moto/csv:
    post:
      operationId: create-moto-campaign
      tags:
        - Campañas MoTo
        - MoTo campaigns
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                description:
                  type: string
                  description: Nombre interno identificativo de la campaña.
                  x-description-i18n:
                    eng: A short description about the campaign.
                expires_at:
                  $ref: '#/components/schemas/MotoOrders/properties/expiresAt'
                file:
                  type: string
                  description: 'Fichero CSV codificado en base64 y encabezado por el texto ''data:text/csv;base64,'''
                  x-description-i18n:
                    eng: 'CSV in base64, starting with the text: `data:text/csv;base64,`'
                filename:
                  type: string
                  description: Nombre del fichero .csv.
                  nullable: true
                  x-description-i18n:
                    eng: Name of the .csv file.
                service_uuid:
                  $ref: '#/components/schemas/Order/properties/service_uuid'
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                subject:
                  type: string
                  description: 'Asunto de la campaña, que será enviado si se indica email como método de envío. En el caso de SMS se indicará el nombre del comercio con un máximo de 11 caracteres.'
                  nullable: true
                  x-description-i18n:
                    eng: 'This value will be sent as subject if the `type` is "EMAIL". In the case of SMS, the name of the merchant will be indicated with a maximum of 11 characters.'
                type:
                  $ref: '#/components/schemas/MoToType'
              example:
                description: Campaña de Navidad 2019
                expires_at: '2017-11-11'
                file: 'data:text/csv;base64,QU1PVU5ULE9QRVJBVElWRSxERVNUSU5BVElPTixDVVNUT01FUl9FWFRfSUQsQURESVRJT05BTCxTRUNVUkUsVVJMX1BPU1QsVVJMX09LLFVSTF9LTyxDQVJEX1RFTVBMQVRFLE1PVE9fVEVNUExBVEUsRENDX1RFTVBMQVRFCjEsREVGRVJSRUQsc3VjY2Vzc0BzaW11bGF0b3IuYW1hem9uc2VzLmNvbSxleHRlcm5hbElELGFkZGl0aW9uYWwsRkFMU0UsaHR0cDovL3VybC5wb3N0LGh0dHA6Ly91cmwub2ssaHR0cDovL3VybC5rbyxDRDVGMzU0MC1CMkNCLTRDNjctQUU2Qi1GNzZFRDkzREU2QzEsRUVCRjEwMjItNkRCMi00NURCLTgxN0QtQTg3QjA5QUU4NDFCLDQwMTExRkU4LTlCMzItNDNFMy1BNEFFLTk3QzdCRTZEMTlDNQ=='
                filename: test.csv
                service_uuid: 60A1F4C0-CC58-47A9-A0B9-868F9EF29045
                signature: 121149a0ba5361191d740fa898784a8b
                subject: Navidad 2019
                type: PHONE
              required:
                - signature
                - subject
                - description
                - service_uuid
                - type
                - expires_at
                - file
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    code: 200
                    current_time: '2019-05-30T12:52:54+0200'
                    detail:
                      clientID: 1
                      clientUUID: B8A48789-8AF0-47D1-9116-35AB0A941121
                      createdAt: '2019-05-30 12:52:54'
                      description: some description
                      entry: WEBSERVICE
                      error: null
                      expiresAt: '2019-04-01 00:00:00'
                      filename: filename.csv
                      id: 21
                      serviceUUID: 60A1F4C0-CC58-47A9-A0B9-868F9EF29045
                      status: PENDING
                      subject: te223st
                      type: MAIL
                      uuid: CFD6A322-47F4-4AA8-8208-B8AAE02D6C87
                    message: OK
                    payments:
                      - additional: null
                        amount: 47
                        cardTemplate: 3FA633A9-0F04-4EDD-B32E-4D56E1B0761D
                        createdAt: '2019-05-30 12:52:54'
                        dccTemplate: null
                        destination: lchessell0@fastcompany.com
                        detailUUID: 7B14E235-3E2E-4050-A906-B30394B0CC44
                        externalID: null
                        id: 774
                        line: 2
                        moToTemplate: null
                        operative: AUTHORIZATION
                        secure: false
                        status: PENDING
                        urlKo: 'https://walmart.com/varius.png'
                        urlOk: 'https://imgur.com/lobortis.aspx'
                        urlPost: 'https://wikimedia.org'
                        uuid: 0297A7B1-5506-49EF-836B-1E2F04C6D179
                      - additional: null
                        amount: 5
                        cardTemplate: null
                        createdAt: '2019-05-30 12:52:54'
                        dccTemplate: null
                        destination: jmedeway1@angelfire.com
                        detailUUID: F18C60E3-EE7F-47BF-8373-94D565DAD87A
                        externalID: null
                        id: 775
                        line: 3
                        moToTemplate: null
                        operative: DEFERRED
                        secure: false
                        status: PENDING
                        urlKo: 'https://1688.com/quisque/erat/eros/viverra.jsp'
                        urlOk: 'https://hud.gov/consequat.xml'
                        urlPost: 'https://weebly.com'
                        uuid: 69D9D760-0F03-4083-9B5D-67C6475695B2
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      detail:
                        description: Los detalles de la campaña MoTo.
                        x-description-i18n:
                          eng: The details of the MoTo campaign.
                        properties:
                          clientID:
                            $ref: '#/components/schemas/MoToCampaign/properties/clientID'
                          clientUUID:
                            $ref: '#/components/schemas/Client/properties/uuid'
                          createdAt:
                            $ref: '#/components/schemas/Order/properties/created'
                          description:
                            type: string
                            description: Nombre interno identificativo de la campaña.
                            x-description-i18n:
                              eng: A short description about the campaign.
                          entry:
                            $ref: '#/components/schemas/MoToEntry'
                          error:
                            type: string
                            description: 'Muestra si se ha producido algún error. Si no se ha producido ninguno, será `null`.'
                            nullable: true
                            x-description-i18n:
                              eng: 'Displays if there has been any error. If there was none, its value is `null`.'
                          expiresAt:
                            $ref: '#/components/schemas/MotoOrders/properties/expiresAt'
                          filename:
                            type: string
                            description: Nombre del fichero .csv.
                            nullable: true
                            x-description-i18n:
                              eng: Name of the .csv file.
                          id:
                            type: number
                            description: Identificador interno de la campaña.
                            x-description-i18n:
                              eng: Internal identifier of the campaign.
                          serviceUUID:
                            $ref: '#/components/schemas/Order/properties/service_uuid'
                          status:
                            $ref: '#/components/schemas/MoToCampaignStatus'
                          subject:
                            type: string
                            description: 'Asunto de la campaña, que será enviado si se indica email como método de envío.'
                            nullable: true
                            x-description-i18n:
                              eng: This value will be sent as subject if the `type` is "EMAIL".
                          type:
                            $ref: '#/components/schemas/MoToType'
                          uuid:
                            $ref: '#/components/schemas/MoToPayment/properties/uuid'
                        required:
                          - id
                          - uuid
                          - description
                          - serviceUUID
                          - clientID
                          - clientUUID
                          - type
                          - status
                          - entry
                          - createdAt
                          - expiresAt
                      payments:
                        type: array
                        items:
                          $ref: '#/components/schemas/MoToPayment'
                    required:
                      - detail
                      - payments
          description: OK
      summary: Envío de enlaces de pago (CSV)
      description: 'Las campañas MoTo pueden crearse de dos formas: a través de la sección Campañas MoTo en el panel de Paylands o mediante una petición a la API de Paylands.'
      x-description-i18n:
        eng: 'MoTo campaigns can be created in two different ways: using the MoTo campaigns section in the control panel or using an endpoint in Paylands API.'
      x-summary-i18n:
        eng: Payment link delivery (CSV)
  /payment/moto/json:
    post:
      operationId: create-moto-campaign-json
      tags:
        - Campañas MoTo
        - MoTo campaigns
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                description:
                  type: string
                  description: Nombre interno identificativo del envío.
                  x-description-i18n:
                    eng: A short description about the delivery.
                expires_at:
                  $ref: '#/components/schemas/MotoOrders/properties/expiresAt'
                service_uuid:
                  $ref: '#/components/schemas/Order/properties/service_uuid'
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                subject:
                  type: string
                  description: 'Asunto de la campaña, que será enviado si se indica email como método de envío. En el caso de SMS se indicará el nombre del comercio con un máximo de 11 caracteres.'
                  nullable: true
                  x-description-i18n:
                    eng: 'This value will be sent as subject if the `type` is "EMAIL". In the case of SMS, the name of the merchant will be indicated with a maximum of 11 characters.'
                type:
                  $ref: '#/components/schemas/MoToType'
                payments:
                  type: array
                  nullable: false
                  items:
                    properties:
                      amount:
                        $ref: '#/components/schemas/Plan/properties/amount'
                      operative:
                        $ref: '#/components/schemas/MoToPayment/properties/operative'
                      secure:
                        $ref: '#/components/schemas/Order/properties/safe'
                      destination:
                        type: string
                        description: Teléfono/email de la persona que recibirá el enlace de pago.
                        x-description-i18n:
                          eng: Phone number/email belonging to the person that will receive the payment link.
                      source_uuid:
                        $ref: '#/components/schemas/TapToPay/properties/uuid'
                      customer_ext_id:
                        $ref: '#/components/schemas/Customer/properties/external_id'
                      additional:
                        type: string
                        description: Campo de texto libre enviado por el comercio. Puede utilizarse para almacenar cualquier dato.
                        x-description-i18n:
                          eng: Free field provided by the merchant. May be used to store any kind of data.
                      url_post:
                        type: string
                        example: 'https://my.website.com/process'
                        description: URL que recibirá una notificación HTTP indicando el estado final del pago.
                        x-description-i18n:
                          eng: URL that will receive an HTTP notification containing the payment's outcome.
                      url_ok:
                        type: string
                        example: 'https://my.website.com/ok'
                        description: URL a la cual se redirigirá el usuario tras el pago si pudo ser cobrado con éxito.
                        x-description-i18n:
                          eng: URL to which the customer will be redirected after the payment if they were successfully charged.
                      url_ko:
                        type: string
                        example: 'https://my.website.com/ko'
                        description: URL a la cual se redirigirá el usuario tras el pago si no pudo ser cobrado.
                        x-description-i18n:
                          eng: URL to which the customer will be redirected after the payment if they could not be charged.
                      card_template:
                        $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/dcc_template'
                      moto_template:
                        $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/dcc_template'
                      dcc_template:
                        type: string
                        description: Plantilla de la carta de pago que se le mostrará al cliente. Si el valor es "null" se utilizara la plantilla por defecto.
                        x-description-i18n:
                          eng: 'Payment card template shown to the customer during the payment process. If the value is `null`, the default payment card template will be used instead.'
                      certified:
                        type: boolean
                        description: '`true` si el envío será certificado. `false` en caso contrario.'
                        x-description-i18n:
                          eng: '`true` if the delivery will be certified. `false` otherwise.'
                      language:
                        type: string
                        description: El idioma usado durante el proceso de pago en formato `ISO 639-1`.
                        x-description-i18n:
                          eng: The language used during the payment process in `ISO 639-1` format.
                      extra_data:
                        $ref: '#/components/schemas/ExtraData'
                        nullable: true
                    required:
                      - amount
                      - operative
                      - secure
                      - destination
              example:
                description: Campaña de Navidad 2019
                expires_at: '2017-11-11'
                service_uuid: 60A1F4C0-CC58-47A9-A0B9-868F9EF29045
                signature: 121149a0ba5361191d740fa898784a8b
                subject: Navidad 2019
                type: PHONE
                payments:
                  - amount: 1233
                    operative: AUTHORIZATION
                    secure: true
                    destination: test@gmail.com
              required:
                - signature
                - subject
                - description
                - service_uuid
                - type
                - expires_at
                - file
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    code: 200
                    current_time: '2019-05-30T12:52:54+0200'
                    detail:
                      clientID: 1
                      clientUUID: B8A48789-8AF0-47D1-9116-35AB0A941121
                      createdAt: '2019-05-30 12:52:54'
                      description: some description
                      entry: WEBSERVICE
                      error: null
                      expiresAt: '2019-04-01 00:00:00'
                      filename: filename.csv
                      serviceUUID: 60A1F4C0-CC58-47A9-A0B9-868F9EF29045
                      status: PENDING
                      subject: te223st
                      type: MAIL
                      uuid: CFD6A322-47F4-4AA8-8208-B8AAE02D6C87
                    message: OK
                    payments:
                      - additional: null
                        amount: 47
                        cardTemplate: 3FA633A9-0F04-4EDD-B32E-4D56E1B0761D
                        createdAt: '2019-05-30 12:52:54'
                        dccTemplate: null
                        currencyID: 978
                        destination: lchessell0@fastcompany.com
                        externalID: null
                        line: 1
                        certificateIdentifier: 9083h4f9nuf2937bk
                        moToTemplate: null
                        operative: AUTHORIZATION
                        isSafe: false
                        status: PENDING
                        urlKo: 'https://merchanturl.com/Success'
                        urlOk: 'https://merchanturl.com/Refused'
                        urlPost: 'https://merchanturl.com/Callback'
                        uuid: 0297A7B1-5506-49EF-836B-1E2F04C6D179
                        error: null
                        language: es
                        extraData: null
                      - additional: null
                        amount: 840
                        cardTemplate: 3BA633A9-0F04-4EDD-B32E-4D56E1B0761D
                        createdAt: '2023-05-30 12:52:54'
                        dccTemplate: null
                        currencyID: 978
                        destination: test@gmail.com
                        externalID: test-customer-id1234
                        line: 2
                        certificateIdentifier: 9083h4f9nuf2937bk
                        moToTemplate: null
                        operative: AUTHORIZATION
                        isSafe: false
                        status: PENDING
                        urlKo: 'https://merchanturl.com/Success'
                        urlOk: 'https://merchanturl.com/Refused'
                        urlPost: 'https://merchanturl.com/Callback'
                        uuid: 0297A7B1-5506-49EF-836B-1E2F04C6D179
                        error: null
                        language: es
                        extraData: null
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      detail:
                        $ref: '#/paths/~1payment~1moto~1csv/post/responses/200/content/application~1json/schema/allOf/1/properties/detail'
                      payments:
                        type: array
                        items:
                          $ref: '#/components/schemas/MoToPayment'
                    required:
                      - detail
                      - payments
          description: OK
      summary: Envío de enlaces de pago (JSON)
      description: Para generar un envío de enlaces de pago mediante JSON será necesario enviar los campos que se detallan a continuación.
      x-description-i18n:
        eng: 'In order to generate a payment link delivery, the following fields must be sent to the API.'
      x-summary-i18n:
        eng: Payment link delivery (JSON)
  '/moto/certificate/link/{moto_payment_uuid}':
    get:
      operationId: download-moto-link-certificate
      tags:
        - Campañas MoTo
        - MoTo campaigns
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: moto_payment_uuid
          in: path
          required: true
          example: C089B1BF-A4FA-4B0F-A5FE-F21C5BFEFC27
          schema:
            type: string
          description: Identificador único del pago MoTo.
          x-description-i18n:
            eng: Unique identifier of the MoTo payment.
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    certificate: JVBERi0xLjYKJfbk/N8KMSAwIG9iago8PAovQWNyb0Zvcm0gMiAwIFIKL01ldGFkYXRhIDMg...
                    code: 200
                    current_time: '2021-02-15T16:55:20+0100'
                    message: OK
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      certificate:
                        type: string
                        description: Certificado en Base64.
                        x-description-i18n:
                          eng: Base64 encoded certificate.
                    required:
                      - certificate
          description: OK
      summary: Descargar certificado de apertura de link
      description: Se puede descargar el certificado de apertura del enlace de pago de un pago MoTo a través de su uuid. Disponible para campañas MoTo mediante SMS.
      x-description-i18n:
        eng: You can download the certificate of opening the payment link of a MoTo payment through your uuid. Available for MoTo campaigns via SMS.
      x-summary-i18n:
        eng: Download link opening certificate
  '/moto/certificate/receipt/{moto_payment_uuid}':
    get:
      operationId: download-moto-reception-certificate
      tags:
        - Campañas MoTo
        - MoTo campaigns
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: moto_payment_uuid
          in: path
          required: true
          example: C089B1BF-A4FA-4B0F-A5FE-F21C5BFEFC27
          schema:
            type: string
          description: Identificador único del pago MoTo.
          x-description-i18n:
            eng: Unique identifier of the MoTo payment.
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    certificate: JVBERi0xLjYKJfbk/N8KMSAwIG9iago8PAovQWNyb0Zvcm0gMiAwIFIKL01ldGFkYXRhIDMg...
                    code: 200
                    current_time: '2021-02-15T16:55:20+0100'
                    message: OK
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - type: object
                    properties:
                      certificate:
                        type: string
                        description: Certificado en Base64.
                        x-description-i18n:
                          eng: Base64 encoded certificate.
                    required:
                      - certificate
          description: OK
      summary: Descargar certificado de recepción
      description: Se puede descargar el certificado de recepción de un pago MoTo a través de su uuid. Disponible para campañas MoTo mediante Email y SMS.
      x-description-i18n:
        eng: You can download the certificate of receipt of a MoTo payment through your uuid. Available for MoTo campaigns via Email and SMS.
      x-summary-i18n:
        eng: Download receipt certificate
  '/payment/moto/orders/{moto_detail_uuid}':
    get:
      operationId: moto-orders
      tags:
        - Campañas MoTo
        - MoTo campaigns
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: moto_detail_uuid
          in: path
          required: true
          example: 2FE8B569-6168-428D-9A3A-8BC265215A1B
          schema:
            type: string
          description: Identificador de la campaña MoTo.
          x-description-i18n:
            eng: Unique identifier of the MoTo campaign.
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2019-05-30T12:52:54+0200'
                    orders:
                      orderUUID: 8A5D2F25-E7F5-4E3B-8207-14643670B6BE
                      destination: email@gmail.com
                      moToPaymentStatus: COMPLETED
                      expiresAt: '2022-04-21 00:00:00'
                      createdAt: '2022-04-20 15:31:26'
                      amount: 100
                      isPaid: false
                      isSafe: true
                      orderType: MAIL
                      operative: AUTHORIZATION
                      description: null
                      token: 38c577a0767928f69a0d481ac46287c6fd03d52e30c234f000e5ee8264699c9ec5840f692347b156c529aef33908fd66ac1e6157e198693f495a5ddd3ab31494
                      externalID: 'null,'
                      filename: moto_orders.csv
                      additional: null
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - type: object
                    properties:
                      orders:
                        $ref: '#/components/schemas/MotoOrders'
                    required:
                      - orders
          description: OK
      summary: Consultar ordenes MoTo
      description: 'Las ordenes MoTo pueden consultarse de dos formas distintas: através del panel de Paylands o usando un endpoint de la API de Paylands.'
      x-description-i18n:
        eng: 'Moto orders can be consulted in two different ways : using the control panel or using an endpoint in Paylands API.'
      x-summary-i18n:
        eng: Consult MoTo orders
  /payment/payout:
    post:
      operationId: payout-payment
      tags:
        - Abonos
        - Payouts
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                order_uuid:
                  $ref: '#/components/schemas/Order/properties/uuid'
                source_uuid:
                  $ref: '#/components/schemas/TapToPay/properties/uuid'
                  nullable: true
                customer_ip:
                  $ref: '#/paths/~1payment~1direct/post/requestBody/content/application~1json/schema/properties/customer_ip'
                  nullable: true
                apm:
                  $ref: '#/paths/~1payment~1process~1%7Btoken%7D/get/parameters/1/schema'
                  nullable: true
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                order_uuid: 1f405ea3-9798-42a6-9e87-bd347ef67f55
                source_uuid: C10721E7-1404-45DC-8762-351DD9945D1D
                customer_ip: 127.0.0.1
                apm: BIZUM
              required:
                - signature
                - order_uuid
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-28T16:08:07+0100'
                    order:
                      uuid: 215D15DB-DB36-4182-BC35-FFCCCF669C9B
                      created: '2021-12-28T16:08:00+0100'
                      created_from_client_timezone: '2021-12-28T17:08:00+0200'
                      amount: 100
                      currency: 978
                      paid: true
                      status: SUCCESS
                      safe: false
                      refunded: 0
                      additional: ''
                      service: CREDORAX
                      service_uuid: 9A1BDCC8-DB30-4ED2-8523-62B330A67873
                      customer: test
                      cof_txnid: null
                      transactions:
                        - uuid: B5FCFC8D-4B69-48FC-B07E-BAC0C32661D8
                          created: '2021-12-28T16:08:02+0100'
                          created_from_client_timezone: '2021-12-28T17:08:02+0200'
                          operative: PAYOUT
                          amount: 100
                          authorization: '623142'
                          processor_id: XZZ72653cb1ebd6894EGORV5Z2YQJGD5
                          status: SUCCESS
                          error: NONE
                          source:
                            object: CARD
                            uuid: 0321A829-79A8-4562-910F-1F37F2E1F5EF
                            type: ''
                            token: 83f69c969aa93a339e0c98ff81de96f4056c56dc035d48a9b99e8005071793734a16310dff4923f7fae8c248eaf6cf41df8b5b399e53559171711dc302e04943
                            brand: VISA
                            country: US
                            holder: TEST CARDHOLDER
                            bin: 411111
                            last4: '1111'
                            is_saved: true
                            expire_month: '12'
                            expire_year: '34'
                            additional: asd
                            bank: 'JPMORGAN CHASE BANK, N.A.'
                            prepaid: ''
                            validation_date: '2021-12-28 15:44:50'
                            creation_date: '2021-12-28 15:44:46'
                            brand_description: null
                          antifraud: null
                          device: null
                      token: 530f02d02848e7d6b55592662541a49f917255f8e9360b971ac48d480b236353b71008e7575a505a7b8fa93ba2bdfcea9da51213cb413cbbe2da3ae4d6f459c2
                      ip: 127.0.0.1
                      reference: null
                      dynamic_descriptor: null
                      threeds_data: null
                    client:
                      uuid: 42B8CF56-A7D7-4D4A-8349-4E27263CB2D5
                    validation_hash: 81c46c70ab2ec6f766b0e118cd7fe8e39641aee9bee8c7a67dcf87b9a4c3ddc0
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      order:
                        $ref: '#/components/schemas/Order'
                      client:
                        $ref: '#/components/schemas/Client'
                required:
                  - order
                  - client
          description: OK
        '400':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Bad Request
                    code: 400
                    details: 'Customer not found: Customer is mandatory when source_uuid not indicated'
              schema:
                $ref: '#/components/schemas/ResponseKO'
          description: Bad Request
        '404':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Not Found
                    code: 404
                    details: 'Source not found: No card found for customerID: 5'
              schema:
                $ref: '#/components/schemas/ResponseKO'
          description: Not Found
      summary: Abono
      description: |-
        Transfiere fondos al `source_uuid` indicado del usuario. Para enviar dinero a una tarjeta, es necesario que ésta haya realizado alguna operación de cobro previa en el terminal. Si no se indica `source_uuid`, se seleccionará la última tarjeta que haya realizado un pago exitoso y esté asociada al `customer_ext_id` indicado al generar la orden.

        También existen otras formas de transferir fondos a un usuario. Algunos servicios soportan métodos de pago alternativos como Bizum, PIX o transferencias bancarias. Si se utiliza un servicio con más de una forma de transferir fondos, es obligatorio indicar el campo `apm` para especificar cuál de ellos se utilizará. Podrá encontrar más información al respecto de estos métodos de pago en la Documentación. No todos los APM soportan abonos.
      x-description-i18n:
        eng: |-
          Transfers funds to the specified `source_uuid` of the customer. To send money to a card, it is necessary for the card to have carried out a previous payment in the terminal. If `source_uuid` is not provided, the last card that has made a successful payment and is associated with the `customer_ext_id` indicated when generating the order will be selected.

          There are also other ways to transfer funds to a customer. Some services support alternative payment methods such as Bizum, PIX or bank transfers. If a service with more than one way of transferring funds such as Redsys is used, it is mandatory to provide the `apm` field to specify which one will be used. You can find more information about these payment methods in the Documentation. Not all APM support payouts.
      x-summary-i18n:
        eng: Payout
  '/payment/process/{token}':
    get:
      operationId: redirection-payment
      tags:
        - Pagos
        - Payments
      parameters:
        - name: token
          in: path
          required: true
          example: ebc9b5ffa2efcf74197734a071192817e6f2a3fc15f49c4b1bdb6edc46b16e3ab4109498bff8e6ba00fb6d2bd1838afbea67095c4caaa2f46e4acf4d5851884c
          schema:
            type: string
          description: El token de la orden.
          x-description-i18n:
            eng: The token of the order.
        - name: apm
          in: query
          description: Nombre del APM (método de pago alternativo) al cual se redirigirá al usuario. Requerido cuando el servicio indicado al generar la orden de pago soporta múltiples APMs. No debe indicarse cuando el pago se realizará con tarjeta.
          x-description-i18n:
            eng: Name of the APM (alternative payment method) to which the user will be redirected. Required when the service provided when generating the payment order supports multiple APMs. Should not be provided when the payment will be made by card.
          required: false
          example: BIZUM
          x-example-i18n:
            eng: BIZUM
          schema:
            description: Método de pago alternativo.
            x-description-i18n:
              eng: Alternative payment method.
            enum:
              - BIZUM
              - IDEAL
              - SOFORT
              - KLARNA
              - VIACASH
              - COFIDIS
              - PIX
              - CRYPTO
              - GIROPAY
              - TRANSFER
              - PSE
              - PAYPAL
              - PAYLATER
              - SPEI
              - MULTIBANCO
              - MBWAY
              - FLOA
              - PAYSAFECARD
              - PAGO_FACIL
              - EFECTY
              - BOLETO
              - LOTERICA
              - PAYSHOP
              - PICPAY
              - MACH
              - KLAP
              - KHIPU
              - SERVIPAG
            type: string
      responses:
        '200':
          content:
            text/html:
              examples:
                response:
                  value: ''
          description: OK
      summary: Por redirección
      description: |-
        Este método permite redirigir al usuario a una pantalla de pago en la cual se le solicitarán los datos de su método de pago, el cual puede ser una tarjeta o un APM (método de pago alternativo). El token solicitado es el que se devuelve al <a href="#operation/generate-payment-order">generar una orden de pago</a>.

        Alternativamente, si se ha indicado el UUID de un checkout en el momento de generar la orden de pago, este método redirigirá el usuario al checkout para que seleccione qué método de pago quiere utilizar para pagar, y se le guiará hasta que el proceso de pago finalice.
      x-description-i18n:
        eng: |-
          This method allows the user to be redirected to a payment screen where they will be prompted for their payment method, which can be a card or an APM (alternative payment method). The requested token is the one that is returned when <a href="#operation/generate-payment-order">generating a payment order</a>.

          Alternatively, if the UUID of a checkout has been indicated at the time of generating the payment order, this method will redirect the user to the checkout to select which payment method they want to use to pay, and will be guided until the payment process is completed.
      x-summary-i18n:
        eng: Redirection
  /payment/refund:
    post:
      operationId: refund-payment
      tags:
        - Pagos
        - Payments
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                order_uuid:
                  $ref: '#/components/schemas/Order/properties/uuid'
                amount:
                  nullable: true
                  type: number
                  minimum: 0
                  description: 'Cantidad a devolver, en la moneda fraccionaria elegida. Una cantidad de 100 utilizando la moneda Euro es igual a 1€.'
                  x-description-i18n:
                    eng: 'Amount to refund, in the fractional currency of your choice. An amount of 100 using the currency EUR is equal to 1€.'
                extra_data:
                  nullable: true
                  properties:
                    marketplace_refunds:
                      description: Datos de la devolución de los distintos comercios asociados al marketplace. La suma del campo `net_amount` para todos ellos deberá coindicir con el campo `amount`.
                      x-description-i18n:
                        eng: Refund data of the different merchants associated with the marketplace. The sum of the `net_amount` field for all of them must match the `amount` field.
                      properties:
                        merchant_location_id:
                          type: number
                          description: ID del merchant.
                          x-description-i18n:
                            eng: Merchant ID
                        amount:
                          type: number
                          description: Importe bruto a devolver por el comercio.
                          x-description-i18n:
                            eng: Gross amount to refund by merchant
                        net_amount:
                          type: number
                          description: Cantidad real a devolver por el comercio.
                          x-description-i18n:
                            eng: Actual amount to be returned by the merchant.
                        description:
                          type: string
                          description: Descripción opcional.
                          x-description-i18n:
                            eng: Optional description.
                      required:
                        - merchant_location_id
                        - amount
                        - net_amount
                      type: object
                  type: object
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                order_uuid: 1f405ea3-9798-42a6-9e87-bd347ef67f55
                amount: 100
                extra_data:
                  marketplace_refunds:
                    - merchant_location_id: 2
                      amount: 0
                      description: Marketplace
                      net_amount: 10
                    - merchant_location_id: 4487
                      amount: 100
                      description: Commerce
                      net_amount: 90
              required:
                - signature
                - order_uuid
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-28T15:53:55+0100'
                    order:
                      uuid: 0753CAF9-F0EB-4D46-A44B-F2B8FD207C4A
                      created: '2021-12-28T15:44:44+0100'
                      created_from_client_timezone: '2021-12-28T16:44:44+0200'
                      amount: 1
                      currency: 978
                      paid: true
                      status: REFUNDED
                      safe: false
                      refunded: 1
                      additional: ''
                      service: CREDORAX
                      service_uuid: 9A1BDCC8-DB30-4ED2-8523-62B330A67873
                      customer: test
                      cof_txnid: null
                      transactions:
                        - uuid: 4F7C93F6-B8CB-4675-B068-46551ED0CDB4
                          created: '2021-12-28T15:44:47+0100'
                          created_from_client_timezone: '2021-12-28T16:44:47+0200'
                          operative: AUTHORIZATION
                          amount: 1
                          authorization: '498046'
                          processor_id: XZZ72d2d316a78daE6ABO3Y32X4HFHSZ
                          status: SUCCESS
                          error: NONE
                          source:
                            object: CARD
                            uuid: 0321A829-79A8-4562-910F-1F37F2E1F5EF
                            type: ''
                            token: 83f69c969aa93a339e0c98ff81de96f4056c56dc035d48a9b99e8005071793734a16310dff4923f7fae8c248eaf6cf41df8b5b399e53559171711dc302e04943
                            brand: VISA
                            country: US
                            holder: TEST CARDHOLDER
                            bin: 411111
                            last4: '1111'
                            is_saved: true
                            expire_month: '12'
                            expire_year: '34'
                            additional: asd
                            bank: 'JPMORGAN CHASE BANK, N.A.'
                            prepaid: ''
                            validation_date: '2021-12-28 15:44:50'
                            creation_date: '2021-12-28 15:44:46'
                            brand_description: null
                          antifraud: null
                          device: null
                          error_details: null
                        - uuid: 28AB037C-40AC-48AE-BBD6-DE2A345674E1
                          created: '2021-12-28T15:53:52+0100'
                          created_from_client_timezone: '2021-12-28T16:53:52+0200'
                          operative: REFUND
                          amount: 1
                          authorization: '498046'
                          processor_id: XZZ72fc316dfbe1f05CX3CCDPCB25A3B
                          status: SUCCESS
                          error: NONE
                          source:
                            object: CARD
                            uuid: 0321A829-79A8-4562-910F-1F37F2E1F5EF
                            type: ''
                            token: 83f69c969aa93a339e0c98ff81de96f4056c56dc035d48a9b99e8005071793734a16310dff4923f7fae8c248eaf6cf41df8b5b399e53559171711dc302e04943
                            brand: VISA
                            country: US
                            holder: TEST CARDHOLDER
                            bin: 411111
                            last4: '1111'
                            is_saved: true
                            expire_month: '12'
                            expire_year: '34'
                            additional: asd
                            bank: 'JPMORGAN CHASE BANK, N.A.'
                            prepaid: ''
                            validation_date: '2021-12-28 15:44:50'
                            creation_date: '2021-12-28 15:44:46'
                            brand_description: null
                          antifraud: null
                          device: null
                          error_details: null
                      token: null
                      ip: null
                      reference: null
                      dynamic_descriptor: null
                      threeds_data: null
                    client:
                      uuid: 42B8CF56-A7D7-4D4A-8349-4E27263CB2D5
                    validation_hash: 63d795ea1cf9c77d7d9a4c52e6c174b97ffed8292d163fe2a92c268c6fd3f3b1
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      order:
                        $ref: '#/components/schemas/Order'
                      client:
                        $ref: '#/components/schemas/Client'
                      extra_data:
                        $ref: '#/components/schemas/ExtraData'
                        nullable: true
          description: OK
        '429':
          content:
            application/json:
              examples:
                retry_after_one_minute:
                  summary: Reintentar después de un minuto
                  x-summary-i18n:
                    eng: Retry after one minute
                  value:
                    message: Too many requests
                    code: 429
                    details: 'Too many requests: Wait at least one minute between attempts.'
                retry_next_day:
                  summary: Reintentar al día siguiente
                  x-summary-i18n:
                    eng: Retry next day
                  value:
                    message: Too many requests
                    code: 429
                    details: 'Too many requests: Wait until the next day before the subsequent attempt.'
              schema:
                properties:
                  message:
                    type: string
                    description: Demasiadas peticiones
                    x-description-i18n:
                      eng: Too many requests
                  code:
                    type: number
                    description: '429'
                    x-description-i18n:
                      eng: '429'
                  details:
                    type: string
                    description: Detalles del error
                    x-description-i18n:
                      eng: Error details
                type: object
                required:
                  - message
                  - code
                  - details
          description: Demasiadas peticiones
          x-description-i18n:
            eng: Too many requests
      summary: Devolución
      description: |-
        Este endpoint se utiliza para devolver un importe a la tarjeta con la que se hizo el pago. Si no se envía el campo `amount`, la devolución será total.
        Si se envía este campo, la devolución será del importe enviado (siempre y cuando sea válido).

        Cuando la devolución se haga a través de un marketplace. Se debe incluir el campo `extra_data`, indicando dentro `marketplace_refunds`y los datos pertinentes a cada comercio y el importe devuelto por cada uno.

        En el campo `amount`, del comercio que efectúa la devolución, será igual al `amount` indicado fuera del `extra_data` y en el `net_amount` se indicará el importe que devolverá cada una de las partes involucradas en la devolución.

        Si un intento de devolución falla, se deberá esperar 1 minuto desde el último intento fallido antes de realizar un nuevo intento. En caso de que una devolución sea exitosa, no será necesario esperar para realizar otro intento de devolución. Sin embargo, si el sistema detecta 3 intentos fallidos en total, no se permitirán más intentos hasta el inicio del próximo día.

        A partir del tercer intento fallido, solo se permitirá un devolución fallida al día. Esto significa que después de los tres primeros reintentos fallidos, si el siguiente también falla, deberá esperar hasta el siguiente día para realizar otro intento.
      x-description-i18n:
        eng: |-
          Using this endpoint, a refund into the source card is requested. If the `amount` field is not sent, it will be a full refund. Otherwise, the refund will be requested for the specified amount (in case it''s valid).

          When the refund is made by a marketplace. The `extra_data` field must be included, indicating within `marketplace_refunds` and the data pertinent to each merchant and the amount refunded by each one.

          In the `amount` field, of the merchant that makes the refund, will be equal to the `amount` indicated outside of the `extra_data` and the `net_amount` will indicate the amount that will be refunded by each of the parties involved in the refund.

          If a refund attempt fails, you must wait 1 minute from the last unsuccessful attempt before making a new attempt. In the event of a successful refund, it will not be necessary to wait for another refund attempt to be made. However, if the system detects 3 failed attempts in total, no further attempts will be allowed until the start of the next day.

          From the third unsuccessful attempt onwards, only one unsuccessful return will be allowed per day. This means that after the first three failed retries, if the next one also fails, you will have to wait until the next day to make another attempt.
      x-summary-i18n:
        eng: Refund
  '/payment/tokenized/{token}':
    get:
      operationId: 3ds-tokenized
      tags:
        - Pagos
        - Payments
      parameters:
        - name: token
          in: path
          required: true
          example: ebc9b5ffa2efcf74197734a071192817e6f2a3fc15f49c4b1bdb6edc46b16e3ab4109498bff8e6ba00fb6d2bd1838afbea67095c4caaa2f46e4acf4d5851884c
          schema:
            type: string
          description: El token de la orden.
          x-description-i18n:
            eng: The token of the order.
      responses:
        '200':
          content:
            text/html:
              examples:
                response:
                  value: ''
          description: OK
      summary: Tokenizado por 3DS
      description: 'Este método de pago es similar al pago por webservice, con la diferencia que en este caso al usuario se le mostrará la pantalla de 3DS antes de finalizarlo.'
      x-description-i18n:
        eng: 'This method is similar to webservice payment, but in this case, the 3DS screen will be shown to the user before completing the payment.'
      x-summary-i18n:
        eng: Tokenized using 3DS
  /payment/transfer:
    post:
      operationId: payment-transfer
      tags:
        - UNNAMED
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                additional:
                  type: object
                  description: Datos adicionales
                  properties:
                    reason:
                      type: string
                      description: Razón/motivo de la transferencia
                  required:
                    - reason
                agent:
                  type: object
                  description: Datos del agente
                  properties:
                    branch_sd:
                      type: string
                      description: Sucursal del agente
                    country_cd:
                      type: string
                      description: Código de la ciudad del agente
                    region_sd:
                      type: string
                      description: Código de la región del agente
                    state_cd:
                      type: string
                      description: Código del estado/provincia del agente
                  required:
                    - region_sd
                    - branch_sd
                    - state_cd
                    - country_cd
                destination:
                  type: object
                  description: Datos del destino
                  properties:
                    country_cd:
                      type: string
                      description: Código  ISO 3166 del país destino
                    currency_cd:
                      type: string
                      description: Código ISO 4217 de la moneda destino
                  required:
                    - country_cd
                    - currency_cd
                order_uuid:
                  type: string
                origin:
                  type: object
                  description: Datos de origen
                  properties:
                    country_cd:
                      type: string
                      description: Código ISO 3166 del país origen
                    currency_cd:
                      type: string
                      description: Código ISO 4217 de la moneda origen
                  required:
                    - country_cd
                    - currency_cd
                payment_type:
                  type: string
                  enum:
                    - CSH
                    - ACC
                    - CSA
                    - HMD
                    - ATM
                  description: Tipo de pago
                recipient:
                  type: object
                  description: Datos del usuario receptor
                  properties:
                    account_uuid:
                      type: string
                      description: UUID de la cuenta del cliente asociado
                    address_uuid:
                      type: string
                      description: UUID de la dirección del cliente asociado
                    external_id:
                      type: string
                      description: ID externo del cliente asociado a la tarjeta
                  required:
                    - external_id
                    - address_uuid
                    - account_uuid
                recipient_agent:
                  type: object
                  description: Datos del agente receptor
                  properties:
                    agent_cd:
                      type: string
                      description: Código del agente
                    branch_sd:
                      type: string
                      description: Sucursal del agente
                    region_sd:
                      type: string
                      description: Código de la región del agente
                  required:
                    - agent_cd
                sender:
                  type: object
                  description: Datos del usuario emisor
                  properties:
                    account_uuid:
                      type: string
                      description: UUID de la cuenta del cliente asociado
                    address_uuid:
                      type: string
                      description: UUID de la dirección del cliente asociado
                    bank_cd:
                      type: string
                      description: Código del banco
                    external_id:
                      type: string
                      description: ID externo del cliente asociado a la tarjeta
                  required:
                    - bank_cd
                    - external_id
                    - address_uuid
                sender_payment_type:
                  type: string
                  enum:
                    - CSH
                    - ACC
                  description: Tipo de pago del emisor
                service:
                  type: string
                signature:
                  type: string
              example:
                additional:
                  reason: Entrada de cine
                agent:
                  branch_sd: CAF09001
                  country_cd: ESP
                  region_sd: '1'
                  state_cd: ARA
                destination:
                  country_cd: ESP
                  currency_cd: EUR
                order_uuid: 1f405ea3-9798-42a6-9e87-bd347ef67f55
                origin:
                  country_cd: ESP
                  currency_cd: EUR
                payment_type: CSH
                recipient:
                  account_uuid: D62B8733-1018-49EA-A66B-C04F5F9C960B
                  address_uuid: 3B2A0424-C06B-422F-ADAF-C7457984274E
                  external_id: test_case_1
                recipient_agent:
                  agent_cd: BH1
                  branch_sd: CAF09001
                  region_sd: '1'
                sender:
                  account_uuid: D62B8733-1018-49EA-A66B-C04F5F9C960B
                  address_uuid: 3B2A0424-C06B-422F-ADAF-C7457984274E
                  bank_cd: BH1
                  external_id: test_case_1
                sender_payment_type: CSH
                service: 60A1F4C0-CC58-47A9-A0B9-868F9EF29045
                signature: 121149a0ba5361191d740fa898784a8b
              required:
                - signature
                - order_uuid
                - service
      responses:
        '200':
          content:
            '*/*':
              schema:
                type: object
          description: OK
      summary: Transferencia
      description: Este endpoint se utiliza para realizar una transferencia.
  /payment/push:
    post:
      operationId: push-payment
      tags:
        - Pagos
        - Payments
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                order_uuid:
                  $ref: '#/components/schemas/Order/properties/uuid'
                apm:
                  $ref: '#/paths/~1payment~1process~1%7Btoken%7D/get/parameters/1/schema'
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                order_uuid: 1f405ea3-9798-42a6-9e87-bd347ef67f55
                apm: BIZUM
              required:
                - signature
                - order_uuid
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-28T15:39:48+0100'
                    order:
                      uuid: C1056CCD-710F-4D63-8B14-F8CE855EBCE0
                      created: '2021-12-28T15:39:39+0100'
                      created_from_client_timezone: '2021-12-28T16:39:39+0200'
                      amount: 50
                      currency: 978
                      paid: false
                      status: PENDING_PROCESSOR_RESPONSE
                      safe: false
                      refunded: 0
                      additional: ''
                      service: REDSYSPSD2
                      service_uuid: 9A1BDCC8-DB30-4ED2-8523-62B330A67873
                      customer: test
                      cof_txnid: null
                      transactions:
                        - uuid: 308C23C4-0D9A-4D77-9215-78F8E049AA55
                          created: '2021-12-28T15:39:43+0100'
                          created_from_client_timezone: '2021-12-28T16:39:43+0200'
                          operative: AUTHORIZATION
                          amount: 50
                          authorization: ''
                          processor_id: null
                          status: CREATED
                          error: NONE
                          source: null
                          antifraud: null
                          device: null
                          error_details: null
                      token: 0adbb69095489116d270a0d06b45ba486e885759554b18c78e3af53a8820a9c884b3a87eba9e8533940a5c211e4fafec7f141c898d8c1b71978481d43397fa00
                      ip: null
                      reference: null
                      dynamic_descriptor: null
                      threeds_data: null
                    client:
                      uuid: 42B8CF56-A7D7-4D4A-8349-4E27263CB2D5
                    extra_data:
                      profile:
                        first_name: Jose
                        last_name: Test
                        phone:
                          number: '700000000'
                          prefix: null
                    validation_hash: 32e999af0254635606ef70d1cb7b8148c0182c1b75c85a73af27cb676563882d
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      order:
                        $ref: '#/components/schemas/Order'
                      client:
                        $ref: '#/components/schemas/Client'
                      extra_data:
                        $ref: '#/components/schemas/ExtraData'
                        nullable: true
                required:
                  - order
                  - client
          description: OK
        '303':
          content:
            application/json:
              examples:
                response:
                  value:
                    code: 303
                    details: 'https://api.paylands.com/v1/sandbox/payment/process/0778dcd0e8725d6cab189df0ec794017f96bd54049c5d3c660db776dabfda69b2498d85756eb8edd0f6384c719ac85e97ec119e6a56ebad8722fafb34f66aebf?apm=BIZUM'
                    message: See Other
              schema:
                required:
                  - message
                  - code
                  - details
                properties:
                  message:
                    type: string
                    description: Valor fijo "See Other".
                    x-description-i18n:
                      eng: Fixed value "See Other".
                  code:
                    type: number
                    description: Código de respuesta fijo 303.
                    x-description-i18n:
                      eng: Fixed response code 303.
                  details:
                    type: string
                    description: Enlace desde el cual el usuario podrá finalizar el pago.
                    x-description-i18n:
                      eng: Link to be sent to the customer to finalize the payment.
                type: object
          description: Respuesta cuando el dispositivo móvil del usuario no es compatible con las notificaciones push de pagos Bizum y debe completar el pago a través de un navegador web.
          x-description-i18n:
            eng: Response when the user's mobile device does not support Bizum payment push notifications and must complete the payment through a web browser.
      summary: Pago PUSH
      description: |-
        Este método permite iniciar pagos alternativos sin que el usuario tenga que estar presente durante el proceso delante de un navegador web. En algunos métodos de pago como Bizum, la llamada a este método enviará la notificación PUSH al teléfono móvil del usuario para que lleve a cabo el pago. En otros, devolverá la información necesaria para que se pueda llevar a cabo el pago.

        Si un servicio de pago soporta más de un APM (método alternativo de pago), deberá indicarse el APM a utilizar en el cuerpo de la petición.
      x-description-i18n:
        eng: |-
          This method allows initiating alternative payments without the user having to be present during the process in front of a web browser. In some payment methods such as Bizum, the call to this method will send the PUSH notification to the user's cell phone to carry out the payment. In others, it will return the information necessary for the payment to be carried out.

          If a payment service supports more than one APM (alternative payment method), the APM to be used must be indicated in the body of the request.
      x-summary-i18n:
        eng: PUSH payment
  /payment/wallet:
    post:
      operationId: wallet-payment
      tags:
        - Pagos
        - Payments
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                order_uuid:
                  $ref: '#/components/schemas/Order/properties/uuid'
                wallet:
                  description: Tipo de wallet utilizado.
                  x-description-i18n:
                    eng: Type of wallet used.
                  enum:
                    - GOOGLEPAY
                    - APPLEPAY
                  type: string
                payload:
                  type: string
                  description: Payload devuelto por el wallet (Google Pay o Apple Pay).
                  example:
                    apiVersionMinor: 0
                    apiVersion: 2
                    paymentMethodData:
                      description: Visa •••• 6089
                      tokenizationData:
                        type: PAYMENT_GATEWAY
                        token: examplePaymentMethodToken
                      type: CARD
                      info:
                        cardNetwork: VISA
                        cardDetails: '6089'
                  x-description-i18n:
                    eng: Payload returned by the wallet (Google Pay or Apple Pay).
                customer_ip:
                  $ref: '#/paths/~1payment~1direct/post/requestBody/content/application~1json/schema/properties/customer_ip'
                  nullable: true
              required:
                - signature
                - order_uuid
                - wallet
                - payload
            examples:
              GooglePay:
                summary: Google pay payload example
                value:
                  signature: 121149a0ba5361191d740fa898784a8b
                  order_uuid: 1F405EA3-9798-42A6-9E87-BD347EF67F55
                  wallet: GOOGLEPAY
                  payload:
                    apiVersionMinor: 0
                    apiVersion: 2
                    paymentMethodData:
                      description: Visa •••• 6089
                      tokenizationData:
                        type: PAYMENT_GATEWAY
                        token: examplePaymentMethodToken
                      type: CARD
                      info:
                        cardNetwork: VISA
                        cardDetails: '6089'
                  customer_ip: 62.43.214.55
              ApplePay:
                summary: Apple pay payload example
                value:
                  signature: 121149a0ba5361191d740fa898784a8b
                  order_uuid: 1F405EA3-9798-42A6-9E87-BD347EF67F55
                  wallet: APPLEPAY
                  payload:
                    token:
                      paymentData:
                        data: PresrgA2qO6eaqgp7Lp1GAt4XHkKtx+xj4fpYJkIsuH03slmJB/nxwQZLRstMB1PA9a60G4m6rcGuiiad43gzQNreR4qRiQjmMHIP5lzVOjqLKcD3TpUoZozt+QDwUrtb/1CjPwQThrSSkXqjwDfplPU5NYh+DaJXd165aAPpe9OiUvXdq0TfSImInvjJ3uPh6dLX5hoSJvDFD/9/goqKOInPis3Hikyf0TOFEV1USJr9Igam7bmbNM4d3sZaVTp/sJ1vE74C/SWXAPwcFnqsD+Reonn3CGZJ+DDgXQXTg3+NWjRmds5IGWZDgBZc4E2OnB3g0554Qaz3/7MeL1VycNRY5bJla/P/5olOWPzYZYcUBseSAYyHsEyCSlIgWgah4jkIQvcqvWHowbe
                        signature: MIAGCSqGSIb3DQEHAqCAMIACAQExDTALBglghkgBZQMEAgEwgAYJKoZIhvcNAQcBAACggDCCA+MwggOIoAMCAQICCEwwQUlRnVQ2MAoGCCqGSM49BAMCMHoxLjAsBgNVBAMMJUFwcGxlIEFwcGxpY2F0aW9uIEludGVncmF0aW9uIENBIC0gRzMxJjAkBgNVBAsMHUFwcGxlIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MRMwEQYDVQQKDApBcHBsZSBJbmMuMQswCQYDVQQGEwJVUzAeFw0xOTA1MTgwMTMyNTdaFw0yNDA1MTYwMTMyNTdaMF8xJTAjBgNVBAMMHGVjYy1zbXAtYnJva2VyLXNpZ25fVUM0LVBST0QxFDASBgNVBAsMC2lPUyBTeXN0ZW1zMRMwEQYDVQQKDApBcHBsZSBJbmMuMQswCQYDVQQGEwJVUzBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABMIVd+3r1seyIY9o3XCQoSGNx7C9bywoPYRgldlK9KVBG4NCDtgR80B+gzMfHFTD9+syINa61dTv9JKJiT58DxOjggIRMIICDTAMBgNVHRMBAf8EAjAAMB8GA1UdIwQYMBaAFCPyScRPk+TvJ+bE9ihsP6K7/S5LMEUGCCsGAQUFBwEBBDkwNzA1BggrBgEFBQcwAYYpaHR0cDovL29jc3AuYXBwbGUuY29tL29jc3AwNC1hcHBsZWFpY2EzMDIwggEdBgNVHSAEggEUMIIBEDCCAQwGCSqGSIb3Y2QFATCB/jCBwwYIKwYBBQUHAgIwgbYMgbNSZWxpYW5jZSBvbiB0aGlzIGNlcnRpZmljYXRlIGJ5IGFueSBwYXJ0eSBhc3N1bWVzIGFjY2VwdGFuY2Ugb2YgdGhlIHRoZW4gYXBwbGljYWJsZSBzdGFuZGFyZCB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB1c2UsIGNlcnRpZmljYXRlIHBvbGljeSBhbmQgY2VydGlmaWNhdGlvbiBwcmFjdGljZSBzdGF0ZW1lbnRzLjA2BggrBgEFBQcCARYqaHR0cDovL3d3dy5hcHBsZS5jb20vY2VydGlmaWNhdGVhdXRob3JpdHkvMDQGA1UdHwQtMCswKaAnoCWGI2h0dHA6Ly9jcmwuYXBwbGUuY29tL2FwcGxlYWljYTMuY3JsMB0GA1UdDgQWBBSUV9tv1XSBhomJdi9+V4UH55tYJDAOBgNVHQ8BAf8EBAMCB4AwDwYJKoZIhvdjZAYdBAIFADAKBggqhkjOPQQDAgNJADBGAiEAvglXH+ceHnNbVeWvrLTHL+tEXzAYUiLHJRACth69b1UCIQDRizUKXdbdbrF0YDWxHrLOh8+j5q9svYOAiQ3ILN2qYzCCAu4wggJ1oAMCAQICCEltL786mNqXMAoGCCqGSM49BAMCMGcxGzAZBgNVBAMMEkFwcGxlIFJvb3QgQ0EgLSBHMzEmMCQGA1UECwwdQXBwbGUgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxEzARBgNVBAoMCkFwcGxlIEluYy4xCzAJBgNVBAYTAlVTMB4XDTE0MDUwNjIzNDYzMFoXDTI5MDUwNjIzNDYzMFowejEuMCwGA1UEAwwlQXBwbGUgQXBwbGljYXRpb24gSW50ZWdyYXRpb24gQ0EgLSBHMzEmMCQGA1UECwwdQXBwbGUgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxEzARBgNVBAoMCkFwcGxlIEluYy4xCzAJBgNVBAYTAlVTMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE8BcRhBnXZIXVGl4lgQd26ICi7957rk3gjfxLk+EzVtVmWzWuItCXdg0iTnu6CP12F86Iy3a7ZnC+yOgphP9URaOB9zCB9DBGBggrBgEFBQcBAQQ6MDgwNgYIKwYBBQUHMAGGKmh0dHA6Ly9vY3NwLmFwcGxlLmNvbS9vY3NwMDQtYXBwbGVyb290Y2FnMzAdBgNVHQ4EFgQUI/JJxE+T5O8n5sT2KGw/orv9LkswDwYDVR0TAQH/BAUwAwEB/zAfBgNVHSMEGDAWgBS7sN6hWDOImqSKmd6+veuv2sskqzA3BgNVHR8EMDAuMCygKqAohiZodHRwOi8vY3JsLmFwcGxlLmNvbS9hcHBsZXJvb3RjYWczLmNybDAOBgNVHQ8BAf8EBAMCAQYwEAYKKoZIhvdjZAYCDgQCBQAwCgYIKoZIzj0EAwIDZwAwZAIwOs9yg1EWmbGG+zXDVspiv/QX7dkPdU2ijr7xnIFeQreJ+Jj3m1mfmNVBDY+d6cL+AjAyLdVEIbCjBXdsXfM4O5Bn/Rd8LCFtlk/GcmmCEm9U+Hp9G5nLmwmJIWEGmQ8Jkh0AADGCAYgwggGEAgEBMIGGMHoxLjAsBgNVBAMMJUFwcGxlIEFwcGxpY2F0aW9uIEludGVncmF0aW9uIENBIC0gRzMxJjAkBgNVBAsMHUFwcGxlIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MRMwEQYDVQQKDApBcHBsZSBJbmMuMQswCQYDVQQGEwJVUwIITDBBSVGdVDYwCwYJYIZIAWUDBAIBoIGTMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTIzMDcwNDA5NTEyMFowKAYJKoZIhvcNAQk0MRswGTALBglghkgBZQMEAgGhCgYIKoZIzj0EAwIwLwYJKoZIhvcNAQkEMSIEIEUps4JeleUrGlWIg43S1cB71ThyjFgRbz5s7GdWmwTLMAoGCCqGSM49BAMCBEcwRQIgTlv+pvxj/5Phfw6CEAIiKRjtCEnMEKcqBsS2emF1dfgCIQCVakCpX6JafFajkbu31CZ5xESu2StZvUFECK1meuBjMgAAAAAAAA==
                        header:
                          publicKeyHash: BDk+Cg5b+koW62kv89J/xjVmqYdLdI9lvAlW0vrh6UU=
                          ephemeralPublicKey: MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE29MsYDD22FnHZgrPcQvsroHic1x+D+nhr8NrgzXyAUIrRjbuiJaurzML78rYaXepzZrQ6ULb/oIoM4mYWEPkYg==
                          transactionId: 77c4eaa4614b4c648c2624f3daa599c4b13c877eb9b17959bcd8c052125c8c76
                        version: EC_v1
                      paymentMethod:
                        displayName: MasterCard 0395
                        network: MasterCard
                        type: debit
                      transactionIdentifier: 77c4eaa4614b4c648c2624f3daa599c4b13c877eb9b17959bcd8c052125c8c76
                  customer_ip: 62.43.214.55
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-28T13:51:27+0100'
                    order:
                      uuid: 91016708-967B-4B58-AD6B-94776C9F7220
                      created: '2021-12-28T13:51:18+0100'
                      created_from_client_timezone: '2021-12-28T14:51:18+0200'
                      amount: 1
                      currency: 978
                      paid: false
                      status: SUCCESS
                      safe: false
                      refunded: 0
                      additional: ''
                      service: CREDORAX
                      service_uuid: 9A1BDCC8-DB30-4ED2-8523-62B330A67873
                      customer: test
                      cof_txnid: '887001863998888'
                      transactions:
                        - uuid: 580B8D14-FEB0-4DF4-BF81-7B22BFE0F26E
                          created: '2021-12-28T13:51:22+0100'
                          created_from_client_timezone: '2021-12-28T14:51:22+0200'
                          operative: AUTHORIZATION
                          amount: 1
                          authorization: '055005'
                          processor_id: XZZ727f5d8192a0c0DCY5FKHSB3MVA6N
                          status: SUCCESS
                          error: NONE
                          source:
                            object: CARD
                            uuid: 7088F344-4261-4244-B0E3-CAEE35E4ADB3
                            type: ''
                            token: f41fdb5764efad821b2527aeaaf236e29d010771ea5a73ba26044526ec934f1100d8fc6930910ccd634ecc81c0aa7a1b3b721a739f2bac8aa4eedc0d529806d8
                            brand: VISA
                            country: US
                            holder: Paco
                            bin: 476173
                            last4: '0016'
                            is_saved: true
                            expire_month: 09
                            expire_year: '23'
                            additional: null
                            bank: ''
                            prepaid: ''
                            validation_date: '2021-12-28 13:51:26'
                            creation_date: '2021-12-28 13:50:45'
                            brand_description: null
                          antifraud: null
                          device: null
                          error_details: null
                      token: null
                      ip: 127.0.0.1
                      reference: null
                      dynamic_descriptor: null
                      threeds_data: null
                    client:
                      uuid: 42B8CF56-A7D7-4D4A-8349-4E27263CB2D5
                    validation_hash: 88e0b4e4ca902beb6df70693a0a94164be0485bab865dc168e3a1bf6bf5a71f7
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      order:
                        $ref: '#/components/schemas/Order'
                      client:
                        $ref: '#/components/schemas/Client'
                      extra_data:
                        $ref: '#/components/schemas/ExtraData'
                        nullable: true
                required:
                  - order
                  - client
          description: OK
        '303':
          content:
            application/json:
              examples:
                response:
                  value:
                    code: 303
                    details: 'https://api.paylands.com/v1/payment/tokenized/082a593dcccf5f3f37a563815659d4316154dff7f8139fabaa98bdffe9ce4375c5f9bb60825d1585738'
                    message: See Other
              schema:
                $ref: '#/paths/~1charge/post/responses/303/content/application~1json/schema'
                required:
                  - message
                  - code
                  - details
          description: Respuesta cuando el pago debe ser finalizado por el usuario de forma segura.
          x-description-i18n:
            eng: Response when the payment cannot finalize without the customer's intervention.
      summary: Pago mediante wallet
      description: |-
        Si se quiere integrar directamente Google Pay o Apple Pay, se puede proceder al pago indicando la orden a pagar y el Payload devuelto por cualquiera de estos wallet. Este flujo es necesario en pagos a través de APP ya que no es posible mostrar el botón de Google Pay o Apple Pay en un webview desde un dispositivo móvil.

        Si el wallet es Google Pay, es posible que sea necesario finalizar el cobro mediante 3DS. En este caso, la respuesta devuelta contendrá la URL a la que debe redirigirse al usuario para autenticarse y poder finalizar el cobro. Si el wallet es Apple Pay, la orden se considerará pagada como 3DS porque Apple Pay se considera un método de pago seguro.
      x-description-i18n:
        eng: |-
          If you want to directly integrate Google Pay or Apple Pay, you can proceed with the payment indicating the order to pay and the Payload returned by any of these wallets. This flow is necessary in payments through an APP since it is not possible to show the Google Pay or Apple Pay button in a webview from a mobile device.

          If the wallet is Google Pay, it may be necessary to finalize the payment through 3DS. In this case, the response will contain the URL to which the user must be redirected to authenticate and complete the payment. If the wallet is Apple Pay, the order will be considered 3DS because Apple Pay is considered a secure payment method.
      x-summary-i18n:
        eng: Payment by wallet
  /subscriptions/company:
    post:
      operationId: create-company
      tags:
        - Subscripciones
        - Subscriptions
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2019-12-04T11:59:41+0100'
                    company:
                      created_at: '2019-12-04 11:59:41'
                      external_id: B8A48789-8AF0-47D1-9116-35AB0A941121
                      name: Paylands Admin
                      updated_at: '2019-12-04 11:59:41'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      company:
                        $ref: '#/components/schemas/Company'
          description: OK
      summary: Crear compañía
      description: 'El primer paso para usar las suscripciones en Paylands es registrarse, creando un perfil en suscripciones donde se relacionarán todos los productos, planes y suscripciones. Basta con hacer una llamada a este endpoint para empezar a usar el servicio.'
      x-description-i18n:
        eng: 'The first step in order to use Paylands'' subscriptions is being registered, creating a subscription profile where all products, plans and subscriptions will be associated. It''s as easy as making a request to the following endpoint.'
      x-summary-i18n:
        eng: Create company
  /subscriptions/product:
    post:
      operationId: create-product
      tags:
        - Subscripciones
        - Subscriptions
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                name:
                  $ref: '#/components/schemas/Product/properties/name'
                external_id:
                  $ref: '#/components/schemas/Product/properties/external_id'
                notification_url:
                  $ref: '#/components/schemas/Product/properties/notification_url'
                  nullable: true
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                external_id: product
                name: Real product
                notification_url: 'https://yourdomain.com/subscriptions/notify'
              required:
                - signature
                - name
                - external_id
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2019-12-04T15:29:10+0100'
                    product:
                      created_at: '2019-12-04 15:29:10'
                      external_id: product
                      name: Real product
                      notification_url: 'https://yourdomain.com/subscriptions/notify'
                      sandbox: false
                      updated_at: '2019-12-04 15:29:10'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      product:
                        $ref: '#/components/schemas/Product'
          description: OK
      summary: Crear producto
      description: 'Un producto identifica al servicio que se quiere ofrecer, y puede tener uno o más planes con cuotas diferentes. Los cobros sobre productos marcados como `sandbox` no se realizan con dinero real.'
      x-description-i18n:
        eng: A product identifies the service being offered and can include one or several plan with different installments. Products that were registed as `sandbox` will not use real money on their charges.
      x-summary-i18n:
        eng: Create product
  /subscriptions/products:
    get:
      operationId: list-products
      tags:
        - Subscripciones
        - Subscriptions
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2019-12-04T15:29:12+0100'
                    products:
                      - created_at: '2019-12-04 15:28:55'
                        external_id: test_product
                        name: Sandbox product
                        notification_url: 'https://yourdomain.com/subscriptions/notify'
                        sandbox: true
                        updated_at: '2019-12-04 15:28:55'
                      - created_at: '2019-12-04 15:29:10'
                        external_id: product
                        name: Real product
                        notification_url: 'https://yourdomain.com/subscriptions/notify'
                        sandbox: false
                        updated_at: '2019-12-04 15:29:10'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      products:
                        type: array
                        items:
                          $ref: '#/components/schemas/Product'
          description: OK
      summary: Listar productos
      description: Lista todos los productos creados hasta la fecha.
      x-description-i18n:
        eng: Lists all created products.
      x-summary-i18n:
        eng: List products
  '/subscriptions/product/{product_external_id}':
    get:
      operationId: get-product
      tags:
        - Subscripciones
        - Subscriptions
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: product_external_id
          in: path
          required: true
          example: product
          schema:
            type: string
          description: ID único externo.
          x-description-i18n:
            eng: Unique external ID of the product.
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2020-03-05T16:46:51+0100'
                    product:
                      created_at: '2020-03-05 16:05:18'
                      external_id: product
                      name: Real product
                      notification_url: 'https://yourdomain.com/subscriptions/notify'
                      sandbox: true
                      updated_at: '2020-03-05 16:05:18'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      product:
                        $ref: '#/components/schemas/Product'
          description: OK
      summary: Obtener un producto
      description: Obtener un producto por su ID externo.
      x-description-i18n:
        eng: Get a product by external ID.
      x-summary-i18n:
        eng: Get product
    delete:
      operationId: delete-product
      tags:
        - Subscripciones
        - Subscriptions
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: product_external_id
          in: path
          required: true
          example: product
          schema:
            type: string
          description: ID externo único del producto.
          x-description-i18n:
            eng: Unique external ID of the product.
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
              example:
                signature: 121149a0ba5361191d740fa898784a8b
              required:
                - signature
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2019-12-04T15:28:25+0100'
                    deleted: 1
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      deleted:
                        $ref: '#/paths/~1subscriptions~1plan~1%7Bplan_external_id%7D/delete/responses/200/content/application~1json/schema/allOf/1/properties/deleted'
          description: OK
      summary: Eliminar producto
      description: 'Elimina un producto, dado su ID externo. Al eliminar un producto, las subscripciones asociadas al producto no serán canceladas.'
      x-description-i18n:
        eng: 'Removes a product, given its external ID. When removing a product, its subscriptions won''t be cancelled.'
      x-summary-i18n:
        eng: Remove product
  '/subscriptions/payment/{payment_id}':
    get:
      operationId: get-subscription-payment
      tags:
        - Subscripciones
        - Subscriptions
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: payment_id
          in: path
          required: true
          example: 5e6116949d3a0c6b2e56826c
          schema:
            type: string
          description: ID del pago de la subscripción.
          x-description-i18n:
            eng: ID of the subscription payment.
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2020-03-05T16:13:31+0100'
                    payment:
                      amount: 99
                      attempt: 1
                      created_at: '2020-03-05 16:11:16'
                      id: 5e6116949d3a0c6b2e56826c
                      payment_date: '2020-03-05'
                      payment_details: '{"order_uuid":"8B5BEB82-0CCA-47B7-A82C-FCEC6D8116B9","source_uuid":"92766871-ABDD-405C-B436-A6F179FD81B3","transaction_uuid":"7E531738-5A56-4319-925A-F97CD96E14D3"}'
                      payment_number: 1
                      status: PAID
                      updated_at: '2020-03-05 16:11:18'
                      subscription:
                        active: true
                        additional_data: '{"operative":"AUTHORIZATION","source_uuid":"92766871-ABDD-405C-B436-A6F179FD81B3","customer_ext_id":"test","service":"C8C482B2-6846-4FA9-A813-1800610996A2","url_post":"https://yourdomain.com/subscriptions/notify"}'
                        created_at: '2020-03-05 16:11:16'
                        first_charge_date: '2020-03-05'
                        id: 5e6116949d3a0c6b2e56826b
                        next_charge_date: '2020-04-05'
                        payment_attempts_limit: 3
                        plan:
                          amount: 99
                          created_at: '2020-03-05 16:05:24'
                          external_id: plan
                          interval: 1
                          interval_offset: 1
                          interval_offset_type: WEEKLY
                          interval_type: MONTHLY
                          name: Real plan name
                          product:
                            created_at: '2020-03-05 16:05:18'
                            external_id: product
                            name: Real product name
                            notification_url: 'https://yourdomain.com/subscriptions/notify'
                            sandbox: true
                            updated_at: '2020-03-05 16:05:18'
                          trial_available: false
                          updated_at: '2020-03-05 16:05:24'
                        status: CREATED
                        total_payment_charged: 1
                        total_payment_number: 3
                        updated_at: '2020-03-05 16:11:18'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      payment:
                        $ref: '#/components/schemas/SubscriptionPayment'
          description: OK
      summary: Obtener un pago
      description: Obtener un pago por su ID.
      x-description-i18n:
        eng: Get a payment by ID
      x-summary-i18n:
        eng: Get a payment
  /subscriptions/payments:
    get:
      operationId: list-subscription-payments
      tags:
        - Subscripciones
        - Subscriptions
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2020-03-05T16:23:23+0100'
                    payments:
                      - amount: 99
                        attempt: 1
                        created_at: '2020-03-05 16:11:16'
                        id: 5e6116949d3a0c6b2e56826c
                        payment_date: '2020-03-05'
                        payment_details: '{"order_uuid":"8B5BEB82-0CCA-47B7-A82C-FCEC6D8116B9","source_uuid":"92766871-ABDD-405C-B436-A6F179FD81B3","transaction_uuid":"7E531738-5A56-4319-925A-F97CD96E14D3"}'
                        payment_number: 1
                        status: PAID
                        updated_at: '2020-03-05 16:11:18'
                        subscription:
                          active: true
                          additional_data: '{"operative":"AUTHORIZATION","source_uuid":"92766871-ABDD-405C-B436-A6F179FD81B3","customer_ext_id":"test","service":"C8C482B2-6846-4FA9-A813-1800610996A2","url_post":"https://yourdomain.com/subscriptions/notify"}'
                          created_at: '2020-03-05 16:11:16'
                          first_charge_date: '2020-03-05'
                          id: 5e6116949d3a0c6b2e56826b
                          next_charge_date: '2020-04-05'
                          payment_attempts_limit: 3
                          plan:
                            amount: 99
                            created_at: '2020-03-05 16:05:24'
                            external_id: plan
                            interval: 1
                            interval_offset: 1
                            interval_offset_type: WEEKLY
                            interval_type: MONTHLY
                            name: Real plan name
                            product:
                              created_at: '2020-03-05 16:05:18'
                              external_id: product
                              name: Real product name
                              notification_url: 'https://yourdomain.com/subscriptions/notify'
                              sandbox: true
                              updated_at: '2020-03-05 16:05:18'
                            trial_available: false
                            updated_at: '2020-03-05 16:05:24'
                          status: CREATED
                          total_payment_charged: 1
                          total_payment_number: 3
                          updated_at: '2020-03-05 16:11:18'
                      - amount: 99
                        attempt: 1
                        created_at: '2020-03-05 16:11:18'
                        id: 5e6116969d3a0c6b2e56826d
                        payment_date: '2020-04-05'
                        payment_details: null
                        payment_number: 2
                        status: CREATED
                        updated_at: '2020-03-05 16:11:18'
                        subscription:
                          active: true
                          additional_data: '{"operative":"AUTHORIZATION","source_uuid":"92766871-ABDD-405C-B436-A6F179FD81B3","customer_ext_id":"test","service":"C8C482B2-6846-4FA9-A813-1800610996A2","url_post":"https://yourdomain.com/subscriptions/notify"}'
                          created_at: '2020-03-05 16:11:16'
                          first_charge_date: '2020-03-05'
                          id: 5e6116949d3a0c6b2e56826b
                          next_charge_date: '2020-04-05'
                          payment_attempts_limit: 3
                          plan:
                            amount: 99
                            created_at: '2020-03-05 16:05:24'
                            external_id: plan
                            interval: 1
                            interval_offset: 1
                            interval_offset_type: WEEKLY
                            interval_type: MONTHLY
                            name: Real plan name
                            product:
                              created_at: '2020-03-05 16:05:18'
                              external_id: product
                              name: Real product name
                              notification_url: 'https://yourdomain.com/subscriptions/notify'
                              sandbox: true
                              updated_at: '2020-03-05 16:05:18'
                            trial_available: false
                            updated_at: '2020-03-05 16:05:24'
                          status: CREATED
                          total_payment_charged: 1
                          total_payment_number: 3
                          updated_at: '2020-03-05 16:11:18'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      payments:
                        type: array
                        $ref: '#/components/schemas/SubscriptionPayment'
          description: OK
      summary: Listar pagos
      description: Listar todos los pagos creados.
      x-description-i18n:
        eng: List all created payments.
      x-summary-i18n:
        eng: List payments
  /subscriptions/plan:
    post:
      operationId: create-plan
      tags:
        - Subscripciones
        - Subscriptions
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                name:
                  $ref: '#/components/schemas/Plan/properties/name'
                external_id:
                  $ref: '#/components/schemas/Plan/properties/external_id'
                product:
                  $ref: '#/components/schemas/Product/properties/external_id'
                amount:
                  $ref: '#/components/schemas/Plan/properties/amount'
                interval:
                  $ref: '#/components/schemas/Plan/properties/interval'
                interval_type:
                  type: string
                  description: 'Determina cada cuánto tiempo debe cobrarse la subscripción. Los valores permitidos son "DAILY", "WEEKLY", "MONTHLY", "ANNUAL"'
                  x-description-i18n:
                    eng: 'Determines how often the subscription should be charged. Allowed values are "DAILY", "WEEKLY", "MONTHLY", "ANNUAL"'
                trial_available:
                  $ref: '#/components/schemas/Plan/properties/trial_available'
                interval_offset:
                  $ref: '#/components/schemas/Plan/properties/interval_offset'
                interval_offset_type:
                  type: string
                  description: 'Determina cuánto dura el periodo de prueba. Los valores permitidos son "DAILY", "WEEKLY", "MONTHLY", "ANNUAL"'
                  x-description-i18n:
                    eng: 'Determines how long the trial lasts. Allowed values are "DAILY", "WEEKLY", "MONTHLY", "ANNUAL"'
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                name: Other plan
                external_id: other_plan
                product: other_product
                amount: 100
                interval: 1
                interval_type: MONTHLY
                trial_available: false
                interval_offset: null
                interval_offset_type: WEEKLY
              required:
                - signature
                - name
                - external_id
                - product
                - interval
                - interval_type
                - amount
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    code: 200
                    current_time: '2019-12-04T16:30:29+0100'
                    message: OK
                    plan:
                      amount: 499
                      created_at: '2019-12-04 16:30:29'
                      external_id: plan
                      interval: 1
                      interval_offset: 1
                      interval_offset_type: WEEKLY
                      interval_type: MONTHLY
                      name: Real plan name
                      trial_available: true
                      updated_at: '2019-12-04 16:30:29'
                      product:
                        created_at: '2019-12-04 15:29:10'
                        external_id: product
                        name: Real product
                        notification_url: 'https://yourdomain.com/subscriptions/notify'
                        sandbox: false
                        updated_at: '2019-12-04 15:29:10'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      plan:
                        $ref: '#/components/schemas/Plan'
          description: OK
      summary: Crear plan
      description: 'Un plan determina el precio y la frecuencia con la que se cobrará la suscripción a un producto, entre otras características. Un plan se asocia a un sólo producto.'
      x-description-i18n:
        eng: 'A plan determines the installment amount and frequency that users will be charged, among other features. A plan is only associated to one product.'
      x-summary-i18n:
        eng: Create plan
  /subscriptions/plans:
    get:
      operationId: list-plans
      tags:
        - Subscripciones
        - Subscriptions
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2019-12-04T16:55:28+0100'
                    plans:
                      - amount: 499
                        created_at: '2019-12-04 16:30:29'
                        external_id: plan
                        interval: 1
                        interval_offset: 1
                        interval_offset_type: WEEKLY
                        interval_type: DAILY
                        name: Real plan name
                        trial_available: true
                        updated_at: '2019-12-04 16:30:29'
                        product:
                          created_at: '2019-12-04 15:29:10'
                          external_id: product
                          name: Real product
                          notification_url: 'https://yourdomain.com/subscriptions/notify'
                          sandbox: false
                          updated_at: '2019-12-04 15:29:10'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      plan:
                        type: array
                        items:
                          $ref: '#/components/schemas/Plan'
          description: OK
      summary: Listar planes
      description: Lista todos los planes creados hasta la fecha.
      x-description-i18n:
        eng: List all plans.
      x-summary-i18n:
        eng: List plans
  '/subscriptions/plan/{plan_external_id}':
    get:
      operationId: get-plan
      tags:
        - Subscripciones
        - Subscriptions
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: plan_external_id
          in: path
          required: true
          example: plan
          schema:
            type: string
          description: ID externo único del plan.
          x-description-i18n:
            eng: Unique external ID of the plan.
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2020-03-05T16:37:02+0100'
                    plan:
                      amount: 99
                      created_at: '2020-03-05 16:05:24'
                      external_id: plan
                      interval: 1
                      interval_offset: 1
                      interval_offset_type: WEEKLY
                      interval_type: MONTHLY
                      name: Real plan name
                      trial_available: false
                      updated_at: '2020-03-05 16:05:24'
                      product:
                        created_at: '2020-03-05 16:05:18'
                        external_id: product
                        name: Sandbox product
                        notification_url: 'https://yourdomain.com/subscriptions/notify'
                        sandbox: true
                        updated_at: '2020-03-05 16:05:18'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      plan:
                        $ref: '#/components/schemas/Plan'
          description: OK
      summary: Obtener un plan
      description: Obtener un plan por su ID externo.
      x-description-i18n:
        eng: Get a plan by external ID.
      x-summary-i18n:
        eng: Get a plan
    delete:
      operationId: delete-plan
      tags:
        - Subscripciones
        - Subscriptions
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: plan_external_id
          in: path
          required: true
          example: plan
          schema:
            type: string
          description: ID externo único del plan.
          x-description-i18n:
            eng: Unique external ID of the plan.
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
              example:
                signature: 121149a0ba5361191d740fa898784a8b
              required:
                - signature
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2019-12-04T16:30:29+0100'
                    deleted: 1
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      deleted:
                        type: number
                        description: Indica el número de entidades borradas.
                        x-description-i18n:
                          eng: Displays the number of deleted entities.
          description: OK
      summary: Eliminar plan
      description: 'Elimina un plan, dado su ID externo. Al eliminar un plan, las subscripciones asociadas al plan no serán canceladas.'
      x-description-i18n:
        eng: 'Removes a plan, given its external ID. When removing a plan, its subscriptions won''t be cancelled.'
      x-summary-i18n:
        eng: Remove plan
  /subscriptions/subscription:
    post:
      operationId: subscribe-client
      tags:
        - Subscripciones
        - Subscriptions
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                plan:
                  $ref: '#/components/schemas/Plan/properties/external_id'
                customer:
                  $ref: '#/components/schemas/Customer/properties/external_id'
                additional_data:
                  $ref: '#/components/schemas/Subscription/properties/additional_data'
                total_payment_number:
                  $ref: '#/components/schemas/Subscription/properties/total_payment_number'
                payment_attempts_limit:
                  type: number
                  description: 'Número máximo de intentos para cobrar una suscripción. Si el cobro de una suscripción falla X veces consecutivas, la suscripción se cancela.'
                  x-description-i18n:
                    eng: 'Maximum amount of retries to charge for any subscription payment. If the payment fails X times consecutively, the subscription is cancelled.'
                initial_date:
                  type: string
                  description: Por defecto es la fecha actual. Si se indica permite especificar el momento en el que se realizará el primer pago.
                  nullable: true
                  x-description-i18n:
                    eng: 'By default, the current date. If provided it specifies when the first payment will be performed.'
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                customer: customer name
                plan: plan
                additional_data:
                  additional: Datos extra
                  customer_ext_id: customer322
                  operative: AUTHORIZATION
                  service: 60A1F4C0-CC58-47A9-A0B9-868F9EF29045
                  source_uuid: C10721E7-1404-45DC-8762-351DD9945D1D
                  url_post: 'https://yourdomain.com/subscriptions/notify'
                initial_date: '2019'
                payment_attempts_limit: 3
                total_payment_number: 3
              required:
                - signature
                - plan
                - customer
                - total_payment_number
                - payment_attempts_limit
                - additional_data
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    amount: 1
                    attempt: 1
                    company: FF255421-F4B7-47E9-9816-949F5F03DE6F
                    currency: 978
                    customer: customer_external_id
                    payment_date: '2019-12-18T10:34:12.640Z'
                    payment_id: 5dfa00a4229c1a127749ae9e
                    payment_number: 1
                    plan: plan_external_id
                    product: product_external_id
                    status: PAID
                    subscription: 5dfa00a4229c1a127749ae9d
              schema:
                type: object
                properties:
                  status:
                    properties:
                      amount:
                        $ref: '#/components/schemas/Plan/properties/amount'
                      attempt:
                        $ref: '#/components/schemas/SubscriptionPayment/properties/attempt'
                      company:
                        type: string
                        description: ID externo otorgado por el comercio para identificar de forma única a una compañía.
                        x-description-i18n:
                          eng: External ID provided by the merchant to uniquely identify a company.
                      currency:
                        $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/currency'
                      customer:
                        $ref: '#/components/schemas/Customer/properties/external_id'
                      payment_date:
                        $ref: '#/components/schemas/SubscriptionPayment/properties/payment_date'
                      payment_id:
                        $ref: '#/components/schemas/SubscriptionPayment/properties/id'
                      payment_number:
                        $ref: '#/components/schemas/SubscriptionPayment/properties/payment_number'
                      plan:
                        $ref: '#/components/schemas/Plan/properties/external_id'
                      product:
                        $ref: '#/components/schemas/Product/properties/external_id'
                      status:
                        $ref: '#/components/schemas/SubscriptionStatus'
                      subscription:
                        $ref: '#/components/schemas/Subscription/properties/id'
                    required:
                      - amount
                      - attempt
                      - company
                      - currency
                      - customer
                      - payment_date
                      - payment_id
                      - payment_number
                      - plan
                      - product
                      - status
                      - subscription
                    type: object
          description: Ejemplo de notificación enviada al endpoint indicado en el `payment_url` del Producto.
          x-description-i18n:
            eng: Example of a notification sent to the endpoint provided on the `payment_url` of the product.
      summary: Suscribir a un cliente
      description: |-
        Suscribe a un cliente a un plan, dado el ID externo del plan y el cliente, entre otros. Si el parámetro `trial_available` del plan es `false`, se realiza un cobro inmediatamente tras suscribir al cliente.

        Si alguno de los parámetros (UUID de servicio o tarjeta, por ejemplo) es incorrecto la subscripción se registrará pero el pago no podrá realizarse. En este caso el `status` será `FAILED_NOTIFICATION`. Un ejemplo de la notificación enviada al `notification_url` del Producto es el siguiente:

        ~~~
        {
            "payment_id": "5dfa00a4229c1a127749ae9e",
            "subscription": "5dfa00a4229c1a127749ae9d",
            "plan": "plan_external_id",
            "product": "product_external_id",
            "customer": "customer_external_id",
            "company": "FF255421-F4B7-47E9-9816-949F5F03DE6F",
            "status": "FAILED_NOTIFICATION",
            "payment_date": "2019-12-18T10:34:12.640Z",
            "payment_number": 1,
            "attempt": 1,
            "amount": 1,
            "currency": "978"
        }
        ~~~

        ![sub_diag_seq_1](https://paylands-web-assets.s3-eu-west-1.amazonaws.com/docs/subscripciones_diag_seq_subscripcion_fallida.png "Registro de subscripción fallido")

        Si todos los parámetros son correctos, el pago se realizará y Paylands enviará la notificación habitual a la `post_url` indicada en la Subscripción. También se enviará una notificación a la `notification_url` del Producto. Un ejemplo de esta notificación se detalla en la segunda respuesta de ejemplo a este endpoint.

        ![sub_diag_seq_2](https://paylands-web-assets.s3-eu-west-1.amazonaws.com/docs/subscripciones_diag_seq_subscripcion_exitosa.png "Registro de subscripción exitoso")
      x-description-i18n:
        eng: |-
          This endpoint subscribes a customer to the specified plan, given plan's external ID and customer's ID, amon other fields. If `trial_available` field within the plan is `false`, an instant charge is carried out after subscribing the customer.
          If any of the fields (service UUID or card UUID, for example) is incorrect, subscription will be registered but charged won't be able to be made. In this case, the `status` field will be `FAILED_NOTIFICATION`. An example of this notification that would be sent to the product's `notification_url` would be the following one:

          ~~~
          {
              "payment_id": "5dfa00a4229c1a127749ae9e",
              "subscription": "5dfa00a4229c1a127749ae9d",
              "plan": "plan_external_id",
              "product": "product_external_id",
              "customer": "customer_external_id",
              "company": "FF255421-F4B7-47E9-9816-949F5F03DE6F",
              "status": "FAILED_NOTIFICATION",
              "payment_date": "2019-12-18T10:34:12.640Z",
              "payment_number": 1,
              "attempt": 1,
              "amount": 1,
              "currency": "978"
          }
          ~~~

          ![sub_diag_seq_1](https://paylands-web-assets.s3-eu-west-1.amazonaws.com/docs/subscripciones_diag_seq_subscripcion_fallida.png "Registro de subscripción fallido")

          If all parameters are correct, charge will be made and Paylands will send the expected notification to the subscription's `post_url`. It will also be sent a notification to the product's `notification_url`. An example of this notification can be seen in the second response to the following endpoint.
          ![sub_diag_seq_2](https://paylands-web-assets.s3-eu-west-1.amazonaws.com/docs/subscripciones_diag_seq_subscripcion_exitosa.png "Registro de subscripción exitoso")
      x-summary-i18n:
        eng: Subscribe a customer
  /subscriptions/subscriptions:
    get:
      operationId: list-subscriptions
      tags:
        - Subscripciones
        - Subscriptions
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2019-12-05T08:42:24+0100'
                    subscriptions:
                      - active: true
                        additional_data: '{"operative":"AUTHORIZATION","source_uuid":"6A219573-128D-40FF-BD54-8C15ECE617E7","customer_ext_id":"customer_name","service":"01067440-6625-4350-8D43-4A7A5E83A3C4","url_post":"https:\/\/yourdomain.com\/subscriptions\/notify"}'
                        created_at: '2019-12-04 14:31:22'
                        first_charge_date: '2019-12-04 14:31:22'
                        id: 5de7b52ac4d347306fd59ec5
                        next_charge_date: '2019-12-04 14:31:22'
                        payment_attempts_limit: 1
                        status: PAID
                        total_payment_charged: 1
                        total_payment_number: 1
                        updated_at: '2019-12-04 14:31:24'
                        plan:
                          amount: 1
                          created_at: '2019-12-04 12:00:58'
                          external_id: plan
                          interval: 1
                          interval_offset: null
                          interval_offset_type: null
                          interval_type: DAILY
                          name: Plan name
                          trial_available: false
                          updated_at: '2019-12-04 15:28:25'
                          product:
                            created_at: '2019-12-04 12:00:51'
                            external_id: product
                            name: Real product
                            notification_url: 'https://yourdomain.com/subscriptions/notify'
                            sandbox: false
                            updated_at: '2019-12-04 15:28:25'
                        payments:
                          - amount: 1
                            attempt: 1
                            created_at: '2019-12-04 12:00:58'
                            id: 5e53b9c5af035032bbd09e8a
                            payment_date: '2019-12-16'
                            payment_details: '{"order_uuid":"4C665F9E-2103-4299-B6C2-831EB1B6970D","source_uuid":"9171049D-756D-476E-97A9-4658A5483116","transaction_uuid":"B081C284-2DEE-4762-8E7B-8D67B42CF6F9"}'
                            payment_number: 1
                            status: PAID
                            updated_at: '2019-12-04 15:28:25'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      subscriptions:
                        type: array
                        items:
                          $ref: '#/components/schemas/Subscription'
          description: OK
      summary: Listar subscripciones
      description: Lista todas las subscripciones creadas hasta la fecha.
      x-description-i18n:
        eng: Lists all subscriptions.
      x-summary-i18n:
        eng: List subscriptions
  '/subscriptions/subscription/{subscription_id}':
    get:
      operationId: get-subscription
      tags:
        - Subscripciones
        - Subscriptions
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: subscription_id
          in: path
          required: true
          example: 5de7b52ac4d347306fd59ec5
          schema:
            type: string
          description: ID único de la subscripción.
          x-description-i18n:
            eng: Unique identifier of the subscription.
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2020-03-05T16:51:27+0100'
                    subscription:
                      active: true
                      additional_data: '{"operative":"AUTHORIZATION","source_uuid":"92766871-ABDD-405C-B436-A6F179FD81B3","customer_ext_id":"test","service":"C8C482B2-6846-4FA9-A813-1800610996A2","url_post":"https:\/\/en26526quut1w.x.pipedream.net"}'
                      created_at: '2020-03-05 16:11:16'
                      first_charge_date: '2020-03-05'
                      id: 5e6116949d3a0c6b2e56826b
                      next_charge_date: '2020-04-05'
                      payment_attempts_limit: 3
                      status: CREATED
                      total_payment_charged: 1
                      total_payment_number: 3
                      updated_at: '2020-03-05 16:11:18'
                      payments:
                        - amount: 99
                          attempt: 1
                          created_at: '2020-03-05 16:11:16'
                          id: 5e6116949d3a0c6b2e56826c
                          payment_date: '2020-03-05'
                          payment_details: '{"order_uuid":"8B5BEB82-0CCA-47B7-A82C-FCEC6D8116B9","source_uuid":"92766871-ABDD-405C-B436-A6F179FD81B3","transaction_uuid":"7E531738-5A56-4319-925A-F97CD96E14D3"}'
                          payment_number: 1
                          status: PAID
                          updated_at: '2020-03-05 16:11:18'
                        - amount: 99
                          attempt: 1
                          created_at: '2020-03-05 16:11:18'
                          id: 5e6116969d3a0c6b2e56826d
                          payment_date: '2020-04-05'
                          payment_details: null
                          payment_number: 2
                          status: CREATED
                          updated_at: '2020-03-05 16:11:18'
                      plan:
                        amount: 99
                        created_at: '2020-03-05 16:05:24'
                        external_id: plan
                        interval: 1
                        interval_offset: 1
                        interval_offset_type: WEEKLY
                        interval_type: MONTHLY
                        name: Sandbox plan
                        trial_available: false
                        updated_at: '2020-03-05 16:05:24'
                        product:
                          created_at: '2020-03-05 16:05:18'
                          external_id: product
                          name: Sandbox product
                          notification_url: 'https://en26526quut1w.x.pipedream.net'
                          sandbox: true
                          updated_at: '2020-03-05 16:05:18'
              schema:
                type: object
                properties:
                  subscription:
                    $ref: '#/components/schemas/Subscription'
          description: OK
      summary: Obtener una subscripción
      description: Obtener una subscripción por su ID.
      x-description-i18n:
        eng: Get a subscription by ID.
      x-summary-i18n:
        eng: Get a subscription
    delete:
      operationId: cancel-subscription
      tags:
        - Subscripciones
        - Subscriptions
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: subscription_id
          in: path
          required: true
          example: 5de7b52ac4d347306fd59ec5
          schema:
            type: string
          description: ID único de la subscripción.
          x-description-i18n:
            eng: Unique identifier of the subscription.
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
              example:
                signature: 121149a0ba5361191d740fa898784a8b
              required:
                - signature
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2019-12-04T17:40:46+0100'
                    deleted: 1
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      deleted:
                        $ref: '#/paths/~1subscriptions~1plan~1%7Bplan_external_id%7D/delete/responses/200/content/application~1json/schema/allOf/1/properties/deleted'
          description: OK
      summary: Cancelar una subscripción
      description: Cancela una subscripción dado su ID.
      x-description-i18n:
        eng: Cancels a subscription using its ID.
      x-summary-i18n:
        eng: Cancel a subscription
  /posms/devices:
    get:
      operationId: list-devices
      tags:
        - POSMS (Dispositivos físicos)
        - POSMS (Physical devices)
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: identifier
          in: query
          required: false
          example: 611629d29a5b401507c11f7e
          schema:
            type: string
          description: Identificador del dispositivo físico.
          x-description-i18n:
            eng: Unique identifier of the physical device.
        - name: service
          in: query
          required: false
          example: 2A207771-A772-48B1-A56F-F72A2B74D768
          schema:
            type: string
          description: Identificador único del servicio de pago.
          x-description-i18n:
            eng: Unique identifier of the payment service.
        - name: terminal_id
          in: query
          required: false
          example: PPESNA0001
          schema:
            type: string
          description: Identificador de dispositivo del adquirente.
          x-description-i18n:
            eng: Identifier of the acquirer's device.
        - name: communication_type
          in: query
          required: false
          example: SOCKET
          schema:
            type: string
          description: Protocolo mediante el cual se realizará la comunicación con el dispositivo físico.
          x-description-i18n:
            eng: Protocol through which the communication with the physical device will be established.
        - name: active
          in: query
          required: false
          example: SOCKET
          schema:
            type: string
          description: Indica si el dispositivo está habilitado para su uso.
          x-description-i18n:
            eng: Whether or not the device is enabled for usage.
        - name: configured
          in: query
          required: false
          example: 'true'
          schema:
            type: string
          description: Indica si el dispositivo se ha configurado correctamente para la comunicación y el uso.
          x-description-i18n:
            eng: Whether or not the device has been properly configured for the communication and usage.
        - name: created_at_from
          in: query
          required: false
          example: '202112312359'
          schema:
            type: string
          description: Dispositivos físicos creados a partir de la fecha especificada en formato `YYYYMMDDHHmm`.
          x-description-i18n:
            eng: Match the physical devices created from a certain date in `YYYYMMDDHHmm` format.
        - name: created_at_to
          in: query
          required: false
          example: '202112312359'
          schema:
            type: string
          description: Dispositivos físicos creados hasta la fecha especificada en formato `YYYYMMDDHHmm`.
          x-description-i18n:
            eng: Match the physical devices created until a certain date in `YYYYMMDDHHmm` format.
        - name: updated_at_from
          in: query
          required: false
          example: '202112312359'
          schema:
            type: string
          description: Dispositivos físicos actualizados a partir de la fecha especificada en formato `YYYYMMDDHHmm`.
          x-description-i18n:
            eng: Match the physical devices updated from a certain date in `YYYYMMDDHHmm` format.
        - name: updated_at_to
          in: query
          required: false
          example: '202112312359'
          schema:
            type: string
          description: Dispositivos físicos actualizados hasta la fecha especificada en formato `YYYYMMDDHHmm`.
          x-description-i18n:
            eng: Match the physical devices updated until a certain date in `YYYYMMDDHHmm` format.
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-11-22T12:00:28+0100'
                    devices:
                      - id: 611629d29a5b401507c11f7e
                        identifier: '352966108064540'
                        service_uuid: 2A207771-A772-48B1-A56F-F72A2B74D768
                        terminal_id: PPESNA0001
                        active: true
                        configured: true
                        communication:
                          type: SOCKET
                          status: ONLINE
                        merchant: 8C63AD7F-D8C2-4A57-B45D-8BB25F37220A
                        properties:
                          name: msm8909
                          model: N3
                          system_name: Linux
                          system_version: 3.10.49-gf1923e2
                          release: 5.1.1
                          hardware: qcom
                        status:
                          battery_level: 52
                          connection_type: WIFI
                          connection_quality: GOOD
                          charging: false
                          build_version: '22'
                          pending_transactions: 0
                        created_at: '2021-11-19 10:23:18'
                        updated_at: '2021-11-19 10:23:45'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      devices:
                        type: array
                        items:
                          $ref: '#/paths/~1posms~1refund/post/responses/200/content/application~1json/schema/allOf/1/properties/device'
          description: OK
      summary: Listar dispositivos físicos
      description: Lista los dispositivos físicos asociados a un comercio.
      x-description-i18n:
        eng: Lists the physical devices associated to a merchant.
      x-summary-i18n:
        eng: List physical devices
  '/posms/device/{id}':
    get:
      operationId: get-device
      tags:
        - POSMS (Dispositivos físicos)
        - POSMS (Physical devices)
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: id
          in: path
          required: true
          example: 611629d29a5b401507c11f7e
          schema:
            type: string
          description: Identificador único del dispositivo físico.
          x-description-i18n:
            eng: Unique identifier of the physical device.
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-11-22T12:00:28+0100'
                    device:
                      id: 611629d29a5b401507c11f7e
                      identifier: '352966108064540'
                      service_uuid: 2A207771-A772-48B1-A56F-F72A2B74D768
                      terminal_id: PPESNA0001
                      active: true
                      configured: true
                      created_at: '2021-11-19 10:23:18'
                      updated_at: '2021-11-19 10:23:45'
                      communication:
                        type: SOCKET
                        status: ONLINE
                      merchant: 8C63AD7F-D8C2-4A57-B45D-8BB25F37220A
                      properties:
                        name: msm8909
                        model: N3
                        system_name: Linux
                        system_version: 3.10.49-gf1923e2
                        release: 5.1.1
                        hardware: qcom
                      status:
                        battery_level: 52
                        connection_type: WIFI
                        connection_quality: GOOD
                        charging: false
                        build_version: '22'
                        pending_transactions: 0
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      device:
                        $ref: '#/paths/~1posms~1refund/post/responses/200/content/application~1json/schema/allOf/1/properties/device'
          description: OK
      summary: Obtener dispositivo
      description: Obtener la información de un dispositivo físico por su ID.
      x-description-i18n:
        eng: Obtain the information of a physical device by its ID.
      x-summary-i18n:
        eng: Get device
  /posms/payment:
    post:
      operationId: device-payment
      tags:
        - POSMS (Dispositivos físicos)
        - POSMS (Physical devices)
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                device:
                  $ref: '#/paths/~1posms~1refund/post/requestBody/content/application~1json/schema/properties/device'
                amount:
                  $ref: '#/components/schemas/Plan/properties/amount'
                  nullable: true
                description:
                  $ref: '#/paths/~1charge/post/requestBody/content/application~1json/schema/properties/description'
                  nullable: true
                customer_ext_id:
                  $ref: '#/components/schemas/Customer/properties/external_id'
                  nullable: true
                additional:
                  $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/additional'
                  nullable: true
                url_post:
                  $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/url_post'
                  nullable: true
                reference:
                  $ref: '#/components/schemas/Order/properties/reference'
                  nullable: true
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                device: 611629d29a5b401507c11f7e
                amount: 100
                description: Order's description
                customer_ext_id: 12345678A
                additional: Additional info
                url_post: 'https://mysite.com/payment/result'
                reference: XXX1234ABC
              required:
                - signature
                - device
                - amount
                - description
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-11-23T16:31:47+0100'
                    order:
                      uuid: 3378D76D-002A-4392-8698-A24BBDA1A5B5
                      created: '2021-11-23T16:31:46+0100'
                      created_from_client_timezone: '2021-11-23T16:31:46+0100'
                      amount: 100
                      currency: 978
                      paid: false
                      status: PENDING_PROCESSOR_RESPONSE
                      safe: true
                      refunded: 0
                      additional: ''
                      service: CREDORAX
                      service_uuid: 2A207771-A772-48B1-A56F-F72A2B74D768
                      customer: null
                      cof_txnid: null
                      transactions:
                        - uuid: 11BB877A-34E3-42F3-B284-46539776FC63
                          created: '2021-11-23T16:31:46+0100'
                          created_from_client_timezone: '2021-11-23T16:31:46+0100'
                          operative: AUTHORIZATION
                          amount: 100
                          authorization: ''
                          processor_id: null
                          status: PENDING
                          error: NONE
                          source: null
                          antifraud: null
                          device: null
                      token: null
                      ip: null
                      reference: null
                      dynamic_descriptor: null
                      threeds_data: null
                    client:
                      uuid: 818431F0-F23F-47EA-A854-BD01E8593E2E
                    device:
                      id: 611629d29a5b401507c11f7e
                      identifier: '352966108064540'
                      service_uuid: 2A207771-A772-48B1-A56F-F72A2B74D768
                      terminal_id: PPESNA0001
                      active: true
                      configured: true
                      created_at: '2021-11-19 10:23:18'
                      updated_at: '2021-11-19 10:23:45'
                      communication:
                        type: SOCKET
                        status: ONLINE
                      merchant: 8C63AD7F-D8C2-4A57-B45D-8BB25F37220A
                      properties:
                        name: msm8909
                        model: N3
                        system_name: Linux
                        system_version: 3.10.49-gf1923e2
                        release: 5.1.1
                        hardware: qcom
                      status:
                        battery_level: 52
                        connection_type: WIFI
                        connection_quality: GOOD
                        charging: false
                        build_version: '22'
                        pending_transactions: 0
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      order:
                        $ref: '#/components/schemas/Order'
                      client:
                        $ref: '#/components/schemas/Client'
                      device:
                        $ref: '#/paths/~1posms~1refund/post/responses/200/content/application~1json/schema/allOf/1/properties/device'
          description: OK
      summary: Enviar pago
      description: Este endpoint permite enviar una orden con operativa AUTORIZACIÓN al dispositivo elegido.
      x-description-i18n:
        eng: This endpoint allows the merchant to send an order with the AUTHORIZATION operation to the chosen physical device.
      x-summary-i18n:
        eng: Send payment
  /posms/preauth:
    post:
      operationId: device-preauth
      tags:
        - POSMS (Dispositivos físicos)
        - POSMS (Physical devices)
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                device:
                  $ref: '#/paths/~1posms~1refund/post/requestBody/content/application~1json/schema/properties/device'
                amount:
                  $ref: '#/components/schemas/Plan/properties/amount'
                  nullable: true
                description:
                  $ref: '#/paths/~1charge/post/requestBody/content/application~1json/schema/properties/description'
                  nullable: true
                customer_ext_id:
                  $ref: '#/components/schemas/Customer/properties/external_id'
                  nullable: true
                additional:
                  $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/additional'
                  nullable: true
                url_post:
                  $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/url_post'
                  nullable: true
                reference:
                  $ref: '#/components/schemas/Order/properties/reference'
                  nullable: true
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                device: 611629d29a5b401507c11f7e
                amount: 100
                description: Order's description
                customer_ext_id: 12345678A
                additional: Additional info
                url_post: 'https://mysite.com/payment/result'
                reference: XXX1234ABC
              required:
                - signature
                - device
                - amount
                - description
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-11-23T16:31:47+0100'
                    order:
                      uuid: 3378D76D-002A-4392-8698-A24BBDA1A5B5
                      created: '2021-11-23T16:31:46+0100'
                      created_from_client_timezone: '2021-11-23T16:31:46+0100'
                      amount: 100
                      currency: 978
                      paid: false
                      status: PENDING_PROCESSOR_RESPONSE
                      safe: true
                      refunded: 0
                      additional: ''
                      service: CREDORAX
                      service_uuid: 2A207771-A772-48B1-A56F-F72A2B74D768
                      customer: null
                      cof_txnid: null
                      transactions:
                        - uuid: 11BB877A-34E3-42F3-B284-46539776FC63
                          created: '2021-11-23T16:31:46+0100'
                          created_from_client_timezone: '2021-11-23T16:31:46+0100'
                          operative: DEFERRED
                          amount: 100
                          authorization: ''
                          processor_id: null
                          status: PENDING
                          error: NONE
                          source: null
                          antifraud: null
                          device: null
                      token: null
                      ip: null
                      reference: null
                      dynamic_descriptor: null
                      threeds_data: null
                    client:
                      uuid: 818431F0-F23F-47EA-A854-BD01E8593E2E
                    device:
                      id: 611629d29a5b401507c11f7e
                      identifier: '352966108064540'
                      service_uuid: 2A207771-A772-48B1-A56F-F72A2B74D768
                      terminal_id: PPESNA0001
                      active: true
                      configured: true
                      created_at: '2021-11-19 10:23:18'
                      updated_at: '2021-11-19 10:23:45'
                      communication:
                        type: SOCKET
                        status: ONLINE
                      merchant: 8C63AD7F-D8C2-4A57-B45D-8BB25F37220A
                      properties:
                        name: msm8909
                        model: N3
                        system_name: Linux
                        system_version: 3.10.49-gf1923e2
                        release: 5.1.1
                        hardware: qcom
                      status:
                        battery_level: 52
                        connection_type: WIFI
                        connection_quality: GOOD
                        charging: false
                        build_version: '22'
                        pending_transactions: 0
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      order:
                        $ref: '#/components/schemas/Order'
                      client:
                        $ref: '#/components/schemas/Client'
                      device:
                        $ref: '#/paths/~1posms~1refund/post/responses/200/content/application~1json/schema/allOf/1/properties/device'
          description: OK
      summary: Enviar pre-autorización
      description: Este endpoint permite enviar una orden con operativa DEFERRED al dispositivo elegido.
      x-description-i18n:
        eng: This endpoint allows the merchant to send an order with the DEFERRED operative to the chosen physical device.
      x-summary-i18n:
        eng: Send pre-authorization
  /posms/preauth/confirm:
    post:
      operationId: device-confirm
      tags:
        - POSMS (Dispositivos físicos)
        - POSMS (Physical devices)
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                device:
                  $ref: '#/paths/~1posms~1refund/post/requestBody/content/application~1json/schema/properties/device'
                order_uuid:
                  $ref: '#/components/schemas/Order/properties/uuid'
                  nullable: true
                amount:
                  $ref: '#/components/schemas/Plan/properties/amount'
                  nullable: true
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                device: 611629d29a5b401507c11f7e
                order_uuid: 4DE116C9-0064-4BCA-A5D0-1D69A8E972FD
                amount: 100
              required:
                - signature
                - device
                - order_uuid
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-11-23T16:34:56+0100'
                    order:
                      uuid: 3378D76D-002A-4392-8698-A24BBDA1A5B5
                      created: '2021-11-23T16:31:46+0100'
                      created_from_client_timezone: '2021-11-23T16:31:46+0100'
                      amount: 100
                      currency: 978
                      paid: true
                      status: PENDING_PROCESSOR_RESPONSE
                      safe: true
                      refunded: 0
                      additional: ''
                      service: CREDORAX
                      service_uuid: 2A207771-A772-48B1-A56F-F72A2B74D768
                      customer: null
                      cof_txnid: null
                      transactions:
                        - uuid: 11BB877A-34E3-42F3-B284-46539776FC63
                          created: '2021-11-23T16:31:46+0100'
                          created_from_client_timezone: '2021-11-23T16:31:46+0100'
                          operative: DEFERRED
                          amount: 100
                          authorization: 005480
                          processor_id: null
                          status: SUCCESS
                          error: NONE
                          source: null
                          antifraud: null
                          device: null
                        - uuid: 9973F531-986E-4F5B-868E-F300F2BB5517
                          created: '2021-11-23T16:34:55+0100'
                          created_from_client_timezone: '2021-11-23T16:34:55+0100'
                          operative: CONFIRMATION
                          amount: 100
                          authorization: ''
                          processor_id: null
                          status: PENDING
                          error: NONE
                          source: null
                          antifraud: null
                          device: null
                      token: null
                      ip: null
                      reference: null
                      dynamic_descriptor: null
                      threeds_data: null
                    client:
                      uuid: 818431F0-F23F-47EA-A854-BD01E8593E2E
                    device:
                      id: 611629d29a5b401507c11f7e
                      identifier: '352966108064540'
                      service_uuid: 2A207771-A772-48B1-A56F-F72A2B74D768
                      terminal_id: PPESNA0001
                      active: true
                      configured: true
                      communication:
                        type: SOCKET
                        status: ONLINE
                      merchant: 8C63AD7F-D8C2-4A57-B45D-8BB25F37220A
                      properties:
                        name: msm8909
                        model: N3
                        system_name: Linux
                        system_version: 3.10.49-gf1923e2
                        release: 5.1.1
                        hardware: qcom
                      status:
                        battery_level: 52
                        connection_type: WIFI
                        connection_quality: GOOD
                        charging: false
                        build_version: '22'
                        pending_transactions: 0
                      created_at: '2021-11-19 10:23:18'
                      updated_at: '2021-11-19 10:23:45'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      order:
                        $ref: '#/components/schemas/Order'
                      client:
                        $ref: '#/components/schemas/Client'
                      device:
                        $ref: '#/paths/~1posms~1refund/post/responses/200/content/application~1json/schema/allOf/1/properties/device'
          description: OK
      summary: Enviar confirmación
      description: Este endpoint permite enviar una confirmación de una pre-autorización a un dispositivo elegido.
      x-description-i18n:
        eng: This endpoint allows the merchant to send a confirmation of a pre-authorization to the chosen physical device.
      x-summary-i18n:
        eng: Send confirmation
  /posms/preauth/cancel:
    post:
      operationId: device-cancel
      tags:
        - POSMS (Dispositivos físicos)
        - POSMS (Physical devices)
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                device:
                  $ref: '#/paths/~1posms~1refund/post/requestBody/content/application~1json/schema/properties/device'
                order_uuid:
                  $ref: '#/components/schemas/Order/properties/uuid'
                  nullable: true
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                device: 611629d29a5b401507c11f7e
                order_uuid: 4DE116C9-0064-4BCA-A5D0-1D69A8E972FD
              required:
                - signature
                - device
                - order_uuid
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-11-23T16:34:56+0100'
                    order:
                      uuid: 3378D76D-002A-4392-8698-A24BBDA1A5B5
                      created: '2021-11-23T16:31:46+0100'
                      created_from_client_timezone: '2021-11-23T16:31:46+0100'
                      amount: 100
                      currency: 978
                      paid: true
                      status: PENDING_PROCESSOR_RESPONSE
                      safe: true
                      refunded: 0
                      additional: ''
                      service: CREDORAX
                      service_uuid: 2A207771-A772-48B1-A56F-F72A2B74D768
                      customer: null
                      cof_txnid: null
                      transactions:
                        - uuid: 11BB877A-34E3-42F3-B284-46539776FC63
                          created: '2021-11-23T16:31:46+0100'
                          created_from_client_timezone: '2021-11-23T16:31:46+0100'
                          operative: DEFERRED
                          amount: 100
                          authorization: 005480
                          processor_id: null
                          status: SUCCESS
                          error: NONE
                          source: null
                          antifraud: null
                          device: null
                        - uuid: 9973F531-986E-4F5B-868E-F300F2BB5517
                          created: '2021-11-23T16:34:55+0100'
                          created_from_client_timezone: '2021-11-23T16:34:55+0100'
                          operative: CANCELLATION
                          amount: 100
                          authorization: ''
                          processor_id: null
                          status: PENDING
                          error: NONE
                          source: null
                          antifraud: null
                          device: null
                      token: null
                      ip: null
                      reference: null
                      dynamic_descriptor: null
                      threeds_data: null
                    client:
                      uuid: 818431F0-F23F-47EA-A854-BD01E8593E2E
                    device:
                      id: 611629d29a5b401507c11f7e
                      identifier: '352966108064540'
                      service_uuid: 2A207771-A772-48B1-A56F-F72A2B74D768
                      terminal_id: PPESNA0001
                      active: true
                      configured: true
                      created_at: '2021-11-19 10:23:18'
                      updated_at: '2021-11-19 10:23:45'
                      communication:
                        type: SOCKET
                        status: ONLINE
                      merchant: 8C63AD7F-D8C2-4A57-B45D-8BB25F37220A
                      properties:
                        name: msm8909
                        model: N3
                        system_name: Linux
                        system_version: 3.10.49-gf1923e2
                        release: 5.1.1
                        hardware: qcom
                      status:
                        battery_level: 52
                        connection_type: WIFI
                        connection_quality: GOOD
                        charging: false
                        build_version: '22'
                        pending_transactions: 0
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      order:
                        $ref: '#/components/schemas/Order'
                      client:
                        $ref: '#/components/schemas/Client'
                      device:
                        $ref: '#/paths/~1posms~1refund/post/responses/200/content/application~1json/schema/allOf/1/properties/device'
          description: OK
      summary: Enviar cancelación
      description: Este endpoint permite enviar una cancelación de una pre-autorización a un dispositivo elegido.
      x-description-i18n:
        eng: This endpoint allows the merchant to send a cancellation of a pre-authorization to the chosen physical device.
      x-summary-i18n:
        eng: Send cancellation
  /posms/refund:
    post:
      operationId: device-refund
      tags:
        - POSMS (Dispositivos físicos)
        - POSMS (Physical devices)
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                device:
                  type: string
                  example: 611629d29a5b401507c11f7e
                  description: Identificador del dispositivo físico.
                  x-description-i18n:
                    eng: Unique identifier of physical device.
                order_uuid:
                  $ref: '#/components/schemas/Order/properties/uuid'
                  nullable: true
                amount:
                  $ref: '#/paths/~1card-present~1refund/post/requestBody/content/application~1json/schema/properties/amount'
                  nullable: true
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                device: 611629d29a5b401507c11f7e
                order_uuid: 4DE116C9-0064-4BCA-A5D0-1D69A8E972FD
                amount: 50
              required:
                - signature
                - device
                - order_uuid
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-11-23T16:34:56+0100'
                    order:
                      uuid: 3378D76D-002A-4392-8698-A24BBDA1A5B5
                      created: '2021-11-23T16:31:46+0100'
                      created_from_client_timezone: '2021-11-23T16:31:46+0100'
                      amount: 100
                      currency: 978
                      paid: true
                      status: PENDING_PROCESSOR_RESPONSE
                      safe: true
                      refunded: 0
                      additional: ''
                      service: CREDORAX
                      service_uuid: 2A207771-A772-48B1-A56F-F72A2B74D768
                      customer: null
                      cof_txnid: null
                      transactions:
                        - uuid: 11BB877A-34E3-42F3-B284-46539776FC63
                          created: '2021-11-23T16:31:46+0100'
                          created_from_client_timezone: '2021-11-23T16:31:46+0100'
                          operative: AUTHORIZATION
                          amount: 100
                          authorization: 005480
                          processor_id: null
                          status: SUCCESS
                          error: NONE
                          source: null
                          antifraud: null
                          device: null
                        - uuid: C0F5DC7F-4272-4637-B1F6-BCEFB3E2B6A1
                          created: '2021-11-23T16:33:43+0100'
                          created_from_client_timezone: '2021-11-23T16:33:43+0100'
                          operative: REFUND
                          amount: 100
                          authorization: ''
                          processor_id: null
                          status: ERROR
                          error: Device 611629d29a5b401507c11f7e is offline!
                          source: null
                          antifraud: null
                          device: null
                        - uuid: 9973F531-986E-4F5B-868E-F300F2BB5517
                          created: '2021-11-23T16:34:55+0100'
                          created_from_client_timezone: '2021-11-23T16:34:55+0100'
                          operative: REFUND
                          amount: 50
                          authorization: ''
                          processor_id: null
                          status: PENDING
                          error: NONE
                          source: null
                          antifraud: null
                          device: null
                      token: null
                      ip: null
                      reference: null
                      dynamic_descriptor: null
                      threeds_data: null
                    client:
                      uuid: 818431F0-F23F-47EA-A854-BD01E8593E2E
                    device:
                      id: 611629d29a5b401507c11f7e
                      identifier: '352966108064540'
                      service_uuid: 2A207771-A772-48B1-A56F-F72A2B74D768
                      terminal_id: PPESNA0001
                      active: true
                      configured: true
                      created_at: '2021-11-19 10:23:18'
                      updated_at: '2021-11-19 10:23:45'
                      communication:
                        type: SOCKET
                        status: ONLINE
                      merchant: 8C63AD7F-D8C2-4A57-B45D-8BB25F37220A
                      properties:
                        name: msm8909
                        model: N3
                        system_name: Linux
                        system_version: 3.10.49-gf1923e2
                        release: 5.1.1
                        hardware: qcom
                      status:
                        battery_level: 52
                        connection_type: WIFI
                        connection_quality: GOOD
                        charging: false
                        build_version: '22'
                        pending_transactions: 0
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      order:
                        $ref: '#/components/schemas/Order'
                      client:
                        $ref: '#/components/schemas/Client'
                      device:
                        type: object
                        properties:
                          id:
                            $ref: '#/paths/~1posms~1refund/post/requestBody/content/application~1json/schema/properties/device'
                          identifier:
                            type: string
                            example: 611629d29a5b401507c11f7e
                            description: Identificador del dispositivo físico. Suele ser el IMEI.
                            x-description-i18n:
                              eng: Unique identifier of the physical device. Usually the IMEI.
                          service_uuid:
                            $ref: '#/components/schemas/Order/properties/service_uuid'
                          terminal_id:
                            type: string
                            example: PPESNA0001
                            description: Identificador de dispositivo del adquirente.
                            x-description-i18n:
                              eng: Identifier of the acquirer's device.
                          active:
                            type: boolean
                            description: Indica si el dispositivo está habilitado para su uso.
                            x-description-i18n:
                              eng: Whether or not the device is enabled for usage.
                          configured:
                            type: boolean
                            description: Indica si el dispositivo se ha configurado correctamente para la comunicación y el uso.
                            x-description-i18n:
                              eng: Whether or not the device has been properly configured for the communication and usage.
                          communication:
                            type: object
                            description: Información necesaria para establecer comunicación con el dispositivo.
                            x-description-i18n:
                              eng: Required information to establish communication with the physical device.
                            properties:
                              type:
                                description: Protocolo mediante el cual se realizará la comunicación con el dispositivo físico.
                                x-description-i18n:
                                  eng: Protocol through which the communication with the physical device will be established.
                                enum:
                                  - SOCKET
                              status:
                                description: Estado de comunicación con el dispositivo según su tipo.
                                x-description-i18n:
                                  eng: 'Communication status with the physical device, according to its type.'
                                enum:
                                  - OFFLINE
                                  - ONLINE
                          merchant:
                            type: string
                            description: Comerciante adjunto al dispositivo.
                            x-description-i18n:
                              eng: Merchant attached to the physical device.
                          properties:
                            type: object
                            description: Propiedades del sistema del dispositivo.
                            x-description-i18n:
                              eng: System properties of the physical device.
                            properties:
                              name:
                                type: string
                                example: msm8909
                                description: El nombre del diseño industrial del dispositivo.
                                x-description-i18n:
                                  eng: The industrial design name of the physical device.
                              model:
                                type: string
                                example: N3
                                description: El nombre visible para el usuario final del dispositivo.
                                x-description-i18n:
                                  eng: The name of the physical device visible to the end user.
                              system_name:
                                type: string
                                example: Linux
                                description: El nombre del sistema operativo del dispositivo.
                                x-description-i18n:
                                  eng: The operative system name of the physical device.
                              system_version:
                                type: string
                                example: 3.10.49-gf1923e2
                                description: La versión del sistema operativo del dispositivo.
                                x-description-i18n:
                                  eng: The version of the underlying operative system.
                              release:
                                type: string
                                example: 5.1.1
                                description: La versión visible del usuario del dispositivo.
                                x-description-i18n:
                                  eng: The version of the device visible to the end user.
                              hardware:
                                type: string
                                example: qcom
                                description: El nombre del hardware del dispositivo.
                                x-description-i18n:
                                  eng: The name of the physical device's hardware.
                          status:
                            type: object
                            description: Estado del dispositivo según su última sincronización.
                            x-description-i18n:
                              eng: The device's status according to the last time it was synched.
                            properties:
                              battery_level:
                                type: number
                                example: 52
                                description: Nivel restante de batería del dispositivo.
                                x-description-i18n:
                                  eng: Remaining battery on the device.
                              connection_type:
                                type: string
                                example: WIFI
                                description: Tipo de conexión del dispositivo a la red.
                                x-description-i18n:
                                  eng: Type of connection of the physical device to the network.
                              connection_quality:
                                type: string
                                example: GOOD
                                description: Calidad de la conexión del dispositivo a la red.
                                x-description-i18n:
                                  eng: Quality of connection to the network of the physical device
                              charging:
                                type: boolean
                                example: false
                                description: Indica si el dispositivo está conectado a una fuente de alimentación externa y está cargando su batería.
                                x-description-i18n:
                                  eng: Whether or not the device is connected to an external power supply and its battery is charging.
                              build_version:
                                type: string
                                example: 22
                                description: La versión SDK del software que se está ejecutando actualmente en este dispositivo de hardware.
                                x-description-i18n:
                                  eng: The SDK version of the software being currently executed on the physical device.
                              pending_transactions:
                                type: number
                                example: 0
                                description: Número de transacciones que el dispositivo aún no ha sincronizado con Paylands.
                                x-description-i18n:
                                  eng: Number of transactions pending to be synched with Paylands.
                          created_at:
                            $ref: '#/components/schemas/Order/properties/created'
                          updated_at:
                            $ref: '#/components/schemas/Plan/properties/updated_at'
                        required:
                          - id
                          - identifier
                          - service_uuid
                          - terminal_id
                          - active
                          - configured
                          - communication
                          - created_at
                          - updated_at
          description: OK
      summary: Enviar devolución
      description: Se puede enviar el importe `amount` si se desea realizar una devolución parcial. Si éste no se indica se tomará como valor el restante por devolver.
      x-description-i18n:
        eng: 'You can send the `amount` field if you need to make a partial refund. If it is not sent, the remaining amount to be refunded will be taken as the value.'
      x-summary-i18n:
        eng: Send refund
  '/transaction/{transaction_uuid}/metadata':
    post:
      operationId: create-metadata
      tags:
        - Transacciones
        - Transactions
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: transaction_uuid
          in: path
          required: true
          example: 1F405EA3-9798-42A6-9E87-BD347EF67F55
          schema:
            type: string
          description: Identificador único de la transacción.
          x-description-i18n:
            eng: Unique identifier of the transaction.
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                metadata:
                  type: array
                  description: Array de pares clave-valor que se asociarán como metadatos a la transacción. Se pueden incluír 20 pares como máximo.
                  x-description-i18n:
                    eng: Array of key-value pairs that will be associated as metadata to the transaction. A maximum of 20 pairs can be included.
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                metadata:
                  key: value
                  key2: value2
                  key3: value3
              required:
                - signature
                - metadata
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-29T10:14:14+0100'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
          description: OK
      summary: Asociar metadatos a una transacción
      description: 'Endpoint para asociar metadatos a una transacción. Se pueden asociar hasta 20 parejas clave-valor a la transacción, las cuales se incluirán más tarde cuando se exporten las operaciones a través de Paylands.'
      x-description-i18n:
        eng: 'Endpoint to associate metadata to a transaction. Up to 20 key-value pairs can be associated with the transaction, which will be included later when exporting transactions through Paylands.'
      x-summary-i18n:
        eng: Bind metadata to a transaction
  '/client/{client_uuid}/services':
    get:
      operationId: list-services
      tags:
        - Comercios
        - Merchants
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: client_uuid
          in: path
          required: true
          example: c52c2f9e-8ae9-4599-8e64-fcabd38d8e71
          schema:
            type: string
          description: UUID del cliente.
          x-description-i18n:
            eng: Client UUID.
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2024-05-21T14:52:09+0200'
                    services:
                      - name: Redsys Sandbox
                        type: REDSYSPSD2
                        enabled: false
                        terminal: C0630A54-73CF-43C0-B428-FEAEB6516F38
                        created: '2023-02-14T10:30:07+0100'
                        uuid: C5DD77D9-9758-4214-ADF3-D3B7985C9BFF
                        dcc_allowed: true
                        dcc_mode: FOREIGN
                        dynamic_descriptor: MyCustomMerchantName
                        referential_integrity: ANY
                      - name: Paynopain Sandbox
                        type: PAYNOPAIN
                        enabled: true
                        terminal: 5DAB5884-8094-49D7-A002-D14EA339144D
                        created: '2023-02-16T09:18:10+0100'
                        uuid: 1593DBAB-483D-4522-80FB-BEC89A8D3F00
                        dcc_allowed: false
                        dcc_mode: LOCAL
                        dynamic_descriptor: MyCustomMerchantName
                        referential_integrity: ANY
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      services:
                        type: array
                        items:
                          $ref: '#/components/schemas/Service'
          description: OK
      summary: Listar los servicios de un cliente
      description: Este método devuelve el listado de servicios de pago asociados a un cliente concreto.
      x-description-i18n:
        eng: This method returns the list of payment services associated with a specific customer.
      x-summary-i18n:
        eng: List a client's services
  /card-present/charge:
    post:
      operationId: create-payment
      tags:
        - Card Present
      parameters:
        - $ref: '#/paths/~1card-present~1sync/get/parameters/0'
      servers:
        - url: 'https://api.paylands.com/sandbox'
          description: Entorno de sandbox en card present
          x-description-i18n:
            eng: Card present sandbox environment
        - url: 'https://api.paylands.com'
          description: Entorno de producción en card present
          x-description-i18n:
            eng: Card present production environment
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                sca:
                  type: object
                  nullable: true
                  properties:
                    original_order_uuid:
                      type: string
                      description: UUID de la orden original que ha solicitado SCA.
                      x-description-i18n:
                        eng: Original order UUID that requested SCA.
                card:
                  type: object
                  description: 'Si se envía el campo track2, los campos pan y expiration_date no se deberán incluir. Si no se envía el track2, los campos pan y expiration_date son obligatorios.'
                  x-description-i18n:
                    eng: 'If the track2 field is sent, the fields pan and expiration_date must not be included. If track2 is not sent, the pan and expiration_date fields are mandatory.'
                  properties:
                    pan:
                      type: string
                      description: PAN cifrado. Sólo si no se indica track2.
                      x-description-i18n:
                        eng: Encrypted PAN. Only if track2 is not provided.
                      nullable: true
                    expiration_date:
                      type: string
                      description: Fecha de caducidad de la tarjeta en formato yyMM y cifrado. Sólo si no se indica track2.
                      x-description-i18n:
                        eng: Card's expiration date in yyMM format. It must be encrypted. Only if track2 is not provided.
                      nullable: true
                    ksn:
                      type: string
                      description: KSN utilizado para cifrar los datos.
                      x-description-i18n:
                        eng: KSN that has been used to encrypt the corresponding fields (track2 or pan+expiration_date)
                      nullable: false
                    track2:
                      type: string
                      description: Datos cifrados que contienen la información del PAN y fecha de caducidad. Sólo si no se indica pan ni expiration_date
                      x-description-i18n:
                        eng: Encrypted string containing PAN and expiration date. Only if pan+expiration_date are not provided.
                      nullable: true
                  required:
                    - ksn
                amount:
                  $ref: '#/components/schemas/Plan/properties/amount'
                currency:
                  type: string
                  example: EUR
                  description: Código de 3 letras identificando la moneda utilizada.
                  x-description-i18n:
                    eng: 3 letter currency code.
                mid:
                  type: string
                  description: Identificador del comercio.
                  x-description-i18n:
                    eng: Merchant identifier.
                stan:
                  type: string
                  description: Identificador de la operación utilizado para la trazabilidad de la misma.
                  x-description-i18n:
                    eng: Transaction identifier used to trace its transactional flow.
                card_reading_method:
                  type: string
                  enum:
                    - KEY_ENTRY
                    - BAR_CODE
                    - MAGNETIC_STRIPE
                    - ICC
                    - NFC
                  description: Método de entrada de la tarjeta.
                  x-description-i18n:
                    eng: Defines how the card has been provided.
                emv_data:
                  type: string
                  description: Datos cifrados con información de la tarjeta y de la transacción.
                  x-description-i18n:
                    eng: Encrypted data including card and transaction information.
                card_sequence_number:
                  type: string
                  minLength: 3
                  maxLength: 3
                  description: Identificador de la tarjeta para diferenciar entre tarjetas con el mismo PAN.
                  x-description-i18n:
                    eng: Card identifier being used to differentiate cards with the same PAN.
                pin:
                  type: object
                  properties:
                    cryptogram:
                      type: string
                      description: PIN cifrado
                      x-description-i18n:
                        eng: Encrypted PIN number
                    format:
                      type: string
                      enum:
                        - ISO-0
                        - ISO-1
                      description: Indica cual de los estandares de codificación del PIN se ha utilizado
                      x-description-i18n:
                        eng: Which one of the encoding standards has been used
                    ksn:
                      type: string
                      description: KSN utilizado para cifrar el pin.
                      x-description-i18n:
                        eng: KSN that has been used to encrypt the pin
                      nullable: false
                    zone_id:
                      type: string
                      description: Identificador de la zona de cifrado
                      x-description-i18n:
                        eng: Encryption zone identifier
                      nullable: true
                  required:
                    - cryptogram
                    - format
                    - ksn
                device:
                  type: object
                  properties:
                    type:
                      type: string
                      description: Indica el tipo de dispositivo utilizado
                      x-description-i18n:
                        eng: Device type
                      enum:
                        - POS
                        - MPOS
                    tid:
                      $ref: '#/paths/~1card-present~1refund/post/requestBody/content/application~1json/schema/properties/tid'
                    attended:
                      type: boolean
                      description: Indica si el dispositivo es atendido o no
                      x-description-i18n:
                        eng: Indicates whether the device is attended or not
                    capabilities:
                      type: array
                      description: Indica las capacidades del dispositivo
                      x-description-i18n:
                        eng: Indicates device capabilities
                      items:
                        enum:
                          - contactChip
                          - contactlessChip
                          - contactMagStripe
                          - contactlessMagStripe
                          - offlineEncipheredPin
                          - offlinePlaintextPin
                          - onlinePin
                          - signature
                          - keyEntry
                          - noCvm
                          - oneTap
                        type: string
                  required:
                    - type
                    - tid
                    - attended
              example:
                card:
                  pan: D6D50230EB59F4BB9BEFA948440C0336
                  expiration_date: 5F365C7EFA6B9523
                  ksn: F0000000090000100000
                amount: 100
                currency: EUR
                mid: '123456789'
                stan: '836425'
                card_reading_method: ICC
                emv_data: 820219808407A00000000410109505000000800101020880
                card_sequence_number: '004'
                pin:
                  cryptogram: 34c2hn5b78021c34np3423bnjsf90
                  format: ISO-0
                  ksn: KeySerialNumber123
                device:
                  type: POS
                  tid: TerminalID123
                  attended: true
              required:
                - card
                - amount
                - currency
                - mid
                - stan
                - card_reading_method
                - emv_data
                - card_sequence_number
                - device
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-28T15:29:49+0100'
                    order:
                      uuid: 96A59A8B-2FCC-4306-92D8-7EA8712BAE5C
                      created: '2021-12-28T15:29:49+0100'
                      created_from_client_timezone: '2021-12-28T16:29:49+0200'
                      amount: 1
                      currency: 978
                      paid: true
                      status: SUCCESS
                      refunded: 0
                      transactions:
                        - uuid: 27A8CC56-97EA-4D4A-8349-4E27263CB123
                          rrn: A4358HT1
                          stan: '865714'
                          created: '2021-12-28T15:29:49+0100'
                          created_from_client_timezone: '2021-12-28T15:29:49+0100'
                          operative: AUTHORIZATION
                          amount: 1
                          authorization: '6985142'
                          processor_id: CC2817B4-4F1D-41B9-ADCA-EA586E0CE796
                          status: SUCCESS
                          error: null
                          source:
                            object: CARD
                            uuid: 362B9A08-DD26-4139-A3C1-DD00CF5B1BB6
                            type: CREDIT
                            token: ebc9b5ffa2efcf74197734a071192817e6f2a3fc15f49c4b1bdb6edc46b16e3ab4109498bff8e6ba00fb6d2bd1838afbea67095c4caaa2f46e4acf4d5851884c
                            brand: VISA
                            country: ES
                            bin: 418233
                            last4: '4321'
                            expire_month: '12'
                            expire_year: '29'
                            bank: 'SERVIRED, SOCIEDAD ESPANOLA DE MEDIOS DE PAGO, S.A.'
                            prepaid: false
                            validation_date: '2021-12-28T15:29:49+0100'
                            creation_date: '2021-12-28T15:29:49+0100'
                            brand_description: Standard Mastercard Card
                          payment_data:
                            terminal_action: SWITCH_INTERFACE
                            new_emv_data: 820219808407A00000000410109505000000800101020880
                    client:
                      uuid: 42B8CF56-A7D7-4D4A-8349-4E27263CB2D5
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      order:
                        type: object
                        properties:
                          uuid:
                            $ref: '#/components/schemas/Order/properties/uuid'
                          created:
                            type: string
                            description: Fecha de creación de la transacción.
                            x-description-i18n:
                              eng: Creation date of the transaction.
                          created_from_client_timezone:
                            type: string
                            example: '2024-04-25T12:44:16+0200'
                            description: Fecha de creación de la transacción en la zona horaria del comercio.
                            x-description-i18n:
                              eng: Creation date of the transaction converted to the merchant's timezone.
                          amount:
                            $ref: '#/components/schemas/Plan/properties/amount'
                          currency:
                            type: number
                            example: 978
                            description: Código numérico ISO 4217 de la moneda.
                            x-description-i18n:
                              eng: ISO 4217 numeric code of the currency.
                          paid:
                            $ref: '#/components/schemas/Order/properties/paid'
                          status:
                            enum:
                              - BLACKLISTED
                              - FRAUD
                              - REFUSED
                              - SUCCESS
                              - PENDING_CONFIRMATION
                            description: Estado final de la operación.
                            x-description-i18n:
                              eng: Transaction's final status.
                            type: string
                          refunded:
                            $ref: '#/components/schemas/Order/properties/refunded'
                          transactions:
                            type: array
                            items:
                              properties:
                                uuid:
                                  $ref: '#/components/schemas/Transaction/properties/uuid'
                                rrn:
                                  $ref: '#/paths/~1card-present~1refund/post/requestBody/content/application~1json/schema/properties/rrn'
                                stan:
                                  $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/stan'
                                created:
                                  type: string
                                  description: Fecha de creación de la transacción.
                                  x-description-i18n:
                                    eng: Creation date of the transaction.
                                created_from_client_timezone:
                                  $ref: '#/components/schemas/Order/properties/created_from_client_timezone'
                                operative:
                                  $ref: '#/components/schemas/TransactionOperative'
                                amount:
                                  $ref: '#/components/schemas/Plan/properties/amount'
                                authorization:
                                  type: string
                                  description: Código de autorización enviado por el servicio tras una operación exitosa.
                                  x-description-i18n:
                                    eng: Authorization code provided by the payment service after a successful payment.
                                processor_id:
                                  type: string
                                  description: ID externo de la transacción en el servicio de pago empleado.
                                  x-description-i18n:
                                    eng: External ID of the transaction in the payment service used.
                                status:
                                  $ref: '#/components/schemas/TransactionStatus'
                                error:
                                  $ref: '#/components/schemas/MoToCampaign/properties/error'
                                source:
                                  type: object
                                  properties:
                                    object:
                                      $ref: '#/components/schemas/APM/properties/object'
                                    uuid:
                                      $ref: '#/components/schemas/TapToPay/properties/uuid'
                                    type:
                                      $ref: '#/components/schemas/SourceTypeOnPayment'
                                    token:
                                      $ref: '#/components/schemas/Card/properties/token'
                                    brand:
                                      $ref: '#/components/schemas/Card/properties/brand'
                                    country:
                                      $ref: '#/components/schemas/Card/properties/country'
                                    bin:
                                      $ref: '#/components/schemas/Card/properties/bin'
                                    last4:
                                      $ref: '#/components/schemas/Card/properties/last4'
                                    expire_month:
                                      $ref: '#/components/schemas/Card/properties/expire_month'
                                    expire_year:
                                      $ref: '#/components/schemas/Card/properties/expire_year'
                                    bank:
                                      $ref: '#/components/schemas/Card/properties/bank'
                                    prepaid:
                                      type: boolean
                                      description: Indica si la tarjeta es prepago. Vacío si se desconoce esta información.
                                      x-description-i18n:
                                        eng: Whether or not the card is prepaid. Empty if unknown.
                                    validation_date:
                                      $ref: '#/components/schemas/Paypal/properties/validation_date'
                                    creation_date:
                                      type: string
                                      description: Fecha de creación de la tarjeta en Paylands.
                                      x-description-i18n:
                                        eng: Card's creation date.
                                    brand_description:
                                      type: string
                                      description: Aporta información extra sobre el tipo de tarjeta.
                                      example: BUSINESS
                                      x-description-i18n:
                                        eng: Additional information about the card type.
                                payment_data:
                                  type: object
                                  properties:
                                    new_emv_data:
                                      type: string
                                      description: Datos EMV nuevos.
                                      x-description-i18n:
                                        eng: New EMV data returned by the processor.
                                    terminal_action:
                                      type: string
                                      enum:
                                        - REQUEST_PIN
                                        - SWITCH_INTERFACE
                                      description: Acción solicitada por la procesadora si hay SCA
                                      x-description-i18n:
                                        eng: Action requested by the processor if SCA is required.
          description: OK
        '400':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Bad Request
                    code: 400
                    details: '<amount> parameter is not numeric. Please, review documentation.'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseKO'
          description: Bad Request
      summary: Procesar un pago
      x-summary-i18n:
        eng: Charge
      description: Este endpoint permite procesar un pago iniciado en un POS.
      x-description-i18n:
        eng: This endpoint allows processing a payment initiated at a POS.
  /card-present/refund:
    post:
      operationId: process-refund
      tags:
        - Card Present
      servers:
        - url: 'https://api.paylands.com/sandbox'
          description: Entorno de sandbox en card present
          x-description-i18n:
            eng: Card present sandbox environment
        - url: 'https://api.paylands.com'
          description: Entorno de producción en card present
          x-description-i18n:
            eng: Card present production environment
      parameters:
        - $ref: '#/paths/~1card-present~1sync/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                amount:
                  type: number
                  minimum: 0
                  description: 'Cantidad a devolver, en la moneda fraccionaria elegida. Una cantidad de 100 utilizando la moneda Euro es igual a 1€.'
                  x-description-i18n:
                    eng: 'Amount to refund, in the fractional currency of your choice. An amount of 100 using the currency EUR is equal to 1€.'
                mid:
                  $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/mid'
                stan:
                  $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/stan'
                rrn:
                  type: string
                  description: 'Código único de la operación. Este código deberá ser utilizado posteriormente para hacer referencia a dicha operación, como para obtener sus datos o ejecutar una devolución.'
                  x-description-i18n:
                    eng: Transaction's unique code. This code will be used afterwards in order to process a refund or when retrieving the transaction details.
                tid:
                  type: string
                  description: Identificador único del dispositivo.
                  x-description-i18n:
                    eng: Device's unique identifier.
              example:
                amount: 100
                mid: '123456789'
                stan: '836425'
                rrn: 59CV8731
                tid: TerminalID123
              required:
                - mid
                - stan
                - rrn
                - tid
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-28T15:29:49+0100'
                    order:
                      uuid: 96A59A8B-2FCC-4306-92D8-7EA8712BAE5C
                      created: '2021-12-28T15:29:49+0100'
                      created_from_client_timezone: '2021-12-28T16:29:49+0200'
                      amount: 1
                      currency: 978
                      paid: true
                      status: SUCCESS
                      refunded: 0
                      transactions:
                        - uuid: 27A8CC56-97EA-4D4A-8349-4E27263CB123
                          rrn: AF389J12
                          stan: 865714
                          created: '2021-12-28T15:29:49+0100'
                          created_from_client_timezone: '2021-12-28T15:29:49+0100'
                          operative: AUTHORIZATION
                          amount: 1
                          authorization: '6985142'
                          processor_id: CC2817B4-4F1D-41B9-ADCA-EA586E0CE796
                          status: SUCCESS
                          error: null
                          source:
                            object: CARD
                            uuid: 362B9A08-DD26-4139-A3C1-DD00CF5B1BB6
                            type: CREDIT
                            token: ebc9b5ffa2efcf74197734a071192817e6f2a3fc15f49c4b1bdb6edc46b16e3ab4109498bff8e6ba00fb6d2bd1838afbea67095c4caaa2f46e4acf4d5851884c
                            brand: VISA
                            country: ES
                            bin: 418233
                            last4: '4321'
                            expire_month: '12'
                            expire_year: '29'
                            bank: 'SERVIRED, SOCIEDAD ESPANOLA DE MEDIOS DE PAGO, S.A.'
                            prepaid: false
                            validation_date: '2021-12-28T15:29:49+0100'
                            creation_date: '2021-12-28T15:29:49+0100'
                            brand_description: Standard Mastercard Card
                        - uuid: E57A7001-F344-401D-AFAA-0CD185563675
                          rrn: AF389J12
                          stan: 132897
                          created: '2024-05-28T15:29:49+0100'
                          created_from_client_timezone: '2024-05-28T15:29:49+0100'
                          operative: REFUND
                          amount: 1
                          authorization: '6985142'
                          processor_id: E57A7001-F344-401D-AFAA-0CD185563675
                          status: SUCCESS
                          error: null
                          source:
                            object: CARD
                            uuid: 362B9A08-DD26-4139-A3C1-DD00CF5B1BB6
                            type: CREDIT
                            token: ebc9b5ffa2efcf74197734a071192817e6f2a3fc15f49c4b1bdb6edc46b16e3ab4109498bff8e6ba00fb6d2bd1838afbea67095c4caaa2f46e4acf4d5851884c
                            brand: VISA
                            country: ES
                            bin: 418233
                            last4: '4321'
                            expire_month: '12'
                            expire_year: '29'
                            bank: 'SERVIRED, SOCIEDAD ESPANOLA DE MEDIOS DE PAGO, S.A.'
                            prepaid: false
                            validation_date: '2021-12-28T15:29:49+0100'
                            creation_date: '2021-12-28T15:29:49+0100'
                            brand_description: Standard Mastercard Card
                    client:
                      uuid: 42B8CF56-A7D7-4D4A-8349-4E27263CB2D5
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      order:
                        type: object
                        properties:
                          uuid:
                            $ref: '#/components/schemas/Order/properties/uuid'
                          created:
                            type: string
                            description: Fecha de creación de la transacción.
                            x-description-i18n:
                              eng: Creation date of the transaction.
                          created_from_client_timezone:
                            type: string
                            example: '2024-04-25T12:44:16+0200'
                            description: Fecha de creación de la transacción en la zona horaria del comercio.
                            x-description-i18n:
                              eng: Creation date of the transaction converted to the merchant's timezone.
                          amount:
                            $ref: '#/components/schemas/Plan/properties/amount'
                          currency:
                            $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/currency'
                          paid:
                            $ref: '#/components/schemas/Order/properties/paid'
                          status:
                            $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/status'
                          refunded:
                            $ref: '#/components/schemas/Order/properties/refunded'
                          transactions:
                            type: array
                            items:
                              properties:
                                uuid:
                                  $ref: '#/components/schemas/Transaction/properties/uuid'
                                rrn:
                                  $ref: '#/paths/~1card-present~1refund/post/requestBody/content/application~1json/schema/properties/rrn'
                                stan:
                                  $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/stan'
                                created:
                                  type: string
                                  description: Fecha de creación de la transacción.
                                  x-description-i18n:
                                    eng: Creation date of the transaction.
                                created_from_client_timezone:
                                  $ref: '#/components/schemas/Order/properties/created_from_client_timezone'
                                operative:
                                  $ref: '#/components/schemas/TransactionOperative'
                                amount:
                                  $ref: '#/components/schemas/Plan/properties/amount'
                                authorization:
                                  $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/authorization'
                                processor_id:
                                  $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/processor_id'
                                status:
                                  $ref: '#/components/schemas/TransactionStatus'
                                error:
                                  $ref: '#/components/schemas/MoToCampaign/properties/error'
                                source:
                                  type: object
                                  properties:
                                    object:
                                      $ref: '#/components/schemas/APM/properties/object'
                                    uuid:
                                      $ref: '#/components/schemas/TapToPay/properties/uuid'
                                    type:
                                      $ref: '#/components/schemas/SourceTypeOnPayment'
                                    token:
                                      $ref: '#/components/schemas/Card/properties/token'
                                    brand:
                                      $ref: '#/components/schemas/Card/properties/brand'
                                    country:
                                      $ref: '#/components/schemas/Card/properties/country'
                                    bin:
                                      $ref: '#/components/schemas/Card/properties/bin'
                                    last4:
                                      $ref: '#/components/schemas/Card/properties/last4'
                                    expire_month:
                                      $ref: '#/components/schemas/Card/properties/expire_month'
                                    expire_year:
                                      $ref: '#/components/schemas/Card/properties/expire_year'
                                    bank:
                                      $ref: '#/components/schemas/Card/properties/bank'
                                    prepaid:
                                      $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/source/properties/prepaid'
                                    validation_date:
                                      $ref: '#/components/schemas/Paypal/properties/validation_date'
                                    creation_date:
                                      type: string
                                      description: Fecha de creación de la tarjeta en Paylands.
                                      x-description-i18n:
                                        eng: Card's creation date.
                                    brand_description:
                                      $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/source/properties/brand_description'
          description: OK
        '400':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Bad Request
                    code: 400
                    details: '<amount> parameter is not numeric. Please, review documentation.'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseKO'
          description: Bad Request
      summary: Procesar una devolución
      x-summary-i18n:
        eng: Process a refund
      description: Este endpoint permite procesar una devolución sobre un cobro anterior.
      x-description-i18n:
        eng: This endpoint allows processing a refund based on a previous charge.
  /card-present/sync:
    get:
      operationId: sync-device
      tags:
        - Card Present
      servers:
        - url: 'https://api.paylands.com/sandbox'
          description: Entorno de sandbox en card present
          x-description-i18n:
            eng: Card present sandbox environment
        - url: 'https://api.paylands.com'
          description: Entorno de producción en card present
          x-description-i18n:
            eng: Card present production environment
      parameters:
        - name: Authorization
          in: header
          description: Cabecera con el token de autenticación
          x-description-i18n:
            eng: Header containing the authentication token
          required: true
          example: Bearer eyJ0eXAiOJIUzI1NiJ9.eRCT1giLCJvcmlnaW4iOiJpbmdlbmljbyJ9.58dN9sKnBc
          x-example-i18n:
            eng: Bearer eyJ0eXAiOJIUzI1NiJ9.eRCT1giLCJvcmlnaW4iOiJpbmdlbmljbyJ9.58dN9sKnBc
          schema:
            type: string
        - name: X-Paynopain-MID
          in: header
          description: Cabecera con el MID del dispositivo que envía la petición
          x-description-i18n:
            eng: Header containing the device's associated MID
          required: true
          example: SFCP00000001
          x-example-i18n:
            eng: Bearer SFCP00000001
          schema:
            type: string
        - name: X-Paynopain-TID
          in: header
          description: Cabecera con el TID del dispositivo que envía la petición
          x-description-i18n:
            eng: Header containing the device's associated TID
          required: true
          example: SF000001
          x-example-i18n:
            eng: Bearer SF000001
          schema:
            type: string
        - name: tid
          in: query
          required: true
          schema:
            type: string
          description: Identificador del dispositivo.
          x-description-i18n:
            eng: Device identifier.
        - name: mid
          in: query
          required: true
          schema:
            type: string
          description: Identificador del comercio.
          x-description-i18n:
            eng: Merchant identifier.
        - name: serialNumber
          in: query
          required: true
          schema:
            type: string
          description: Número de serie del dispositivo.
          x-description-i18n:
            eng: Device serial number.
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2025-01-31T13:29:49+0100'
                    mid: '123'
                    tid: '123456'
                    serial_number: sn123
                    service_uuid: 8CD50619-7B37-4080-9729-C5F7D0CA39FB
                    emv_config: '{"key1": "value1"}'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      mid:
                        $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/mid'
                      tid:
                        type: string
                        example: 123456
                        description: Identificador del dispositivo.
                        x-description-i18n:
                          eng: Device identifier.
                      serial_number:
                        type: string
                        example: sn123
                        description: Número de serie del dispositivo.
                        x-description-i18n:
                          eng: Device serial number.
                      service_uuid:
                        $ref: '#/components/schemas/Order/properties/service_uuid'
                      emv_config:
                        type: string
                        example: '{"key1": "value1"}'
                        description: Configuración EMV del dispositivo.
                        x-description-i18n:
                          eng: EMV device configuration.
          description: OK
        '400':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Bad Request
                    code: 400
                    details: '<tid> parameter is mandatory. Please, review documentation.'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseKO'
          description: Bad Request
        '404':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Not Found
                    code: 404
                    details: Card present device not found
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseKO'
          description: Not Found
      summary: Sincronizar un dispositivo
      x-summary-i18n:
        eng: Sync a device
      description: 'Al utilizar este endpoint, los dispositivos obtendrán su configuración más actualizada.'
      x-description-i18n:
        eng: 'By using this endpoint, devices will fetch their most updated configuration.'
  /card-present/cancel:
    post:
      operationId: auto-cancel
      tags:
        - Card Present
      servers:
        - url: 'https://api.paylands.com/sandbox'
          description: Entorno de sandbox en card present
          x-description-i18n:
            eng: Card present sandbox environment
        - url: 'https://api.paylands.com'
          description: Entorno de producción en card present
          x-description-i18n:
            eng: Card present production environment
      parameters:
        - $ref: '#/paths/~1card-present~1sync/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                stan:
                  $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/stan'
                mid:
                  $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/mid'
                device:
                  type: object
                  properties:
                    tid:
                      $ref: '#/paths/~1card-present~1refund/post/requestBody/content/application~1json/schema/properties/tid'
                  example:
                    tid: SF11111111
                  required:
                    - tid
              example:
                stan: '836425'
                mid: SFCP123456789
              required:
                - stan
                - mid
                - device
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-28T15:29:49+0100'
                    order:
                      uuid: 96A59A8B-2FCC-4306-92D8-7EA8712BAE5C
                      created: '2021-12-28T15:29:49+0100'
                      created_from_client_timezone: '2021-12-28T16:29:49+0200'
                      amount: 1
                      currency: 978
                      paid: true
                      status: SUCCESS
                      refunded: 0
                      transactions:
                        - uuid: 27A8CC56-97EA-4D4A-8349-4E27263CB123
                          rrn: A4358HT1
                          stan: '865714'
                          created: '2021-12-28T15:29:49+0100'
                          created_from_client_timezone: '2021-12-28T15:29:49+0100'
                          operative: AUTHORIZATION
                          amount: 1
                          authorization: '6985142'
                          processor_id: CC2817B4-4F1D-41B9-ADCA-EA586E0CE796
                          status: SUCCESS
                          error: null
                          source:
                            object: CARD
                            uuid: 362B9A08-DD26-4139-A3C1-DD00CF5B1BB6
                            type: CREDIT
                            token: ebc9b5ffa2efcf74197734a071192817e6f2a3fc15f49c4b1bdb6edc46b16e3ab4109498bff8e6ba00fb6d2bd1838afbea67095c4caaa2f46e4acf4d5851884c
                            brand: VISA
                            country: ES
                            bin: 418233
                            last4: '4321'
                            expire_month: '12'
                            expire_year: '29'
                            bank: 'SERVIRED, SOCIEDAD ESPANOLA DE MEDIOS DE PAGO, S.A.'
                            prepaid: false
                            validation_date: '2021-12-28T15:29:49+0100'
                            creation_date: '2021-12-28T15:29:49+0100'
                            brand_description: Standard Mastercard Card
                    client:
                      uuid: 42B8CF56-A7D7-4D4A-8349-4E27263CB2D5
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      order:
                        type: object
                        properties:
                          uuid:
                            $ref: '#/components/schemas/Order/properties/uuid'
                          created:
                            type: string
                            description: Fecha de creación de la transacción.
                            x-description-i18n:
                              eng: Creation date of the transaction.
                          created_from_client_timezone:
                            type: string
                            example: '2024-04-25T12:44:16+0200'
                            description: Fecha de creación de la transacción en la zona horaria del comercio.
                            x-description-i18n:
                              eng: Creation date of the transaction converted to the merchant's timezone.
                          amount:
                            $ref: '#/components/schemas/Plan/properties/amount'
                          currency:
                            $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/currency'
                          paid:
                            $ref: '#/components/schemas/Order/properties/paid'
                          status:
                            $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/status'
                          refunded:
                            $ref: '#/components/schemas/Order/properties/refunded'
                          transactions:
                            type: array
                            items:
                              properties:
                                uuid:
                                  $ref: '#/components/schemas/Transaction/properties/uuid'
                                rrn:
                                  $ref: '#/paths/~1card-present~1refund/post/requestBody/content/application~1json/schema/properties/rrn'
                                stan:
                                  $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/stan'
                                created:
                                  type: string
                                  description: Fecha de creación de la transacción.
                                  x-description-i18n:
                                    eng: Creation date of the transaction.
                                created_from_client_timezone:
                                  $ref: '#/components/schemas/Order/properties/created_from_client_timezone'
                                operative:
                                  $ref: '#/components/schemas/TransactionOperative'
                                amount:
                                  $ref: '#/components/schemas/Plan/properties/amount'
                                authorization:
                                  $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/authorization'
                                processor_id:
                                  $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/processor_id'
                                status:
                                  $ref: '#/components/schemas/TransactionStatus'
                                error:
                                  $ref: '#/components/schemas/MoToCampaign/properties/error'
                                source:
                                  type: object
                                  properties:
                                    object:
                                      $ref: '#/components/schemas/APM/properties/object'
                                    uuid:
                                      $ref: '#/components/schemas/TapToPay/properties/uuid'
                                    type:
                                      $ref: '#/components/schemas/SourceTypeOnPayment'
                                    token:
                                      $ref: '#/components/schemas/Card/properties/token'
                                    brand:
                                      $ref: '#/components/schemas/Card/properties/brand'
                                    country:
                                      $ref: '#/components/schemas/Card/properties/country'
                                    bin:
                                      $ref: '#/components/schemas/Card/properties/bin'
                                    last4:
                                      $ref: '#/components/schemas/Card/properties/last4'
                                    expire_month:
                                      $ref: '#/components/schemas/Card/properties/expire_month'
                                    expire_year:
                                      $ref: '#/components/schemas/Card/properties/expire_year'
                                    bank:
                                      $ref: '#/components/schemas/Card/properties/bank'
                                    prepaid:
                                      $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/source/properties/prepaid'
                                    validation_date:
                                      $ref: '#/components/schemas/Paypal/properties/validation_date'
                                    creation_date:
                                      type: string
                                      description: Fecha de creación de la tarjeta en Paylands.
                                      x-description-i18n:
                                        eng: Card's creation date.
                                    brand_description:
                                      $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/source/properties/brand_description'
          description: OK
        '400':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Bad Request
                    code: 400
                    details: Transaction identifiers not found for the given Stan.
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseKO'
          description: Bad Request
      summary: Anulación automática
      x-summary-i18n:
        eng: Automatic void
      description: Ejecutar la anulación automática de la última operación realizada.
      x-description-i18n:
        eng: Void last processed transaction.
  /card-present/preauth:
    post:
      operationId: preauth
      tags:
        - Card Present
      servers:
        - url: 'https://api.paylands.com/sandbox'
          description: Entorno de sandbox en card present
          x-description-i18n:
            eng: Card present sandbox environment
        - url: 'https://api.paylands.com'
          description: Entorno de producción en card present
          x-description-i18n:
            eng: Card present production environment
      parameters:
        - $ref: '#/paths/~1card-present~1sync/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                sca:
                  type: object
                  nullable: true
                  properties:
                    original_order_uuid:
                      type: string
                      description: UUID de la orden original que ha solicitado SCA.
                      x-description-i18n:
                        eng: Original order UUID that requested SCA.
                card:
                  type: object
                  description: 'Si se envía el campo track2, los campos pan y expiration_date no se deberán incluir. Si no se envía el track2, los campos pan y expiration_date son obligatorios.'
                  x-description-i18n:
                    eng: 'If the track2 field is provided, the pan and expiration_date fields must not be included. If track2 is not sent, the pan and expiration_date fields are mandatory.'
                  properties:
                    pan:
                      $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/card/properties/pan'
                    expiration_date:
                      $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/card/properties/expiration_date'
                    ksn:
                      $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/card/properties/ksn'
                    track2:
                      $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/card/properties/track2'
                  required:
                    - ksn
                amount:
                  $ref: '#/components/schemas/Plan/properties/amount'
                currency:
                  type: string
                  example: EUR
                  description: Código de 3 letras identificando la moneda utilizada.
                  x-description-i18n:
                    eng: 3 letter currency code.
                mid:
                  $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/mid'
                stan:
                  $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/stan'
                card_reading_method:
                  $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/card_reading_method'
                emv_data:
                  $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/emv_data'
                card_sequence_number:
                  $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/card_sequence_number'
                pin:
                  type: object
                  properties:
                    cryptogram:
                      $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/pin/properties/cryptogram'
                    format:
                      $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/pin/properties/format'
                    ksn:
                      $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/pin/properties/ksn'
                device:
                  type: object
                  properties:
                    type:
                      $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/device/properties/type'
                    tid:
                      $ref: '#/paths/~1card-present~1refund/post/requestBody/content/application~1json/schema/properties/tid'
                    attended:
                      $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/device/properties/attended'
                    capabilities:
                      $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/device/properties/capabilities'
                  required:
                    - type
                    - tid
                    - attended
              example:
                card:
                  track2: DAEF4E2CC4188D7C898CA48C8CEBB998A7C19A7CC995DEC9D7F92757606346B7960D161E8EF59737
                  expiration_date: 9A7CC995
                  ksn: F0000000090000100000
                amount: 100
                currency: EUR
                mid: '123456789'
                stan: '836425'
                card_reading_method: ICC
                emv_data: 820219808407A00000000410109505000000800101020880
                card_sequence_number: '004'
                pin:
                  cryptogram: 34c2hn5b78021c34np3423bnjsf90
                  format: ISO-0
                  ksn: KeySerialNumber123
                device:
                  type: POS
                  tid: TerminalID123
                  attended: 'true,'
              required:
                - card
                - amount
                - currency
                - mid
                - stan
                - card_reading_method
                - emv_data
                - card_sequence_number
                - device
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-28T15:29:49+0100'
                    order:
                      uuid: 96A59A8B-2FCC-4306-92D8-7EA8712BAE5C
                      created: '2021-12-28T15:29:49+0100'
                      created_from_client_timezone: '2021-12-28T16:29:49+0200'
                      amount: 1
                      currency: 978
                      paid: true
                      status: PENDING_CONFIRMATION
                      refunded: 0
                      transactions:
                        - uuid: 27A8CC56-97EA-4D4A-8349-4E27263CB123
                          rrn: A4358HT1
                          stan: '865714'
                          created: '2021-12-28T15:29:49+0100'
                          created_from_client_timezone: '2021-12-28T15:29:49+0100'
                          operative: DEFERRED
                          amount: 1
                          authorization: '6985142'
                          processor_id: CC2817B4-4F1D-41B9-ADCA-EA586E0CE796
                          status: SUCCESS
                          error: null
                          source:
                            object: CARD
                            uuid: 362B9A08-DD26-4139-A3C1-DD00CF5B1BB6
                            type: CREDIT
                            token: ebc9b5ffa2efcf74197734a071192817e6f2a3fc15f49c4b1bdb6edc46b16e3ab4109498bff8e6ba00fb6d2bd1838afbea67095c4caaa2f46e4acf4d5851884c
                            brand: VISA
                            country: ES
                            bin: 418233
                            last4: '4321'
                            expire_month: '12'
                            expire_year: '29'
                            bank: 'SERVIRED, SOCIEDAD ESPANOLA DE MEDIOS DE PAGO, S.A.'
                            prepaid: false
                            validation_date: '2021-12-28T15:29:49+0100'
                            creation_date: '2021-12-28T15:29:49+0100'
                            brand_description: Standard Mastercard Card
                          payment_data:
                            terminal_action: SWITCH_INTERFACE
                            new_emv_data: 820219808407A00000000410109505000000800101020880
                    client:
                      uuid: 42B8CF56-A7D7-4D4A-8349-4E27263CB2D5
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      order:
                        type: object
                        properties:
                          uuid:
                            $ref: '#/components/schemas/Order/properties/uuid'
                          created:
                            type: string
                            description: Fecha de creación de la transacción.
                            x-description-i18n:
                              eng: Creation date of the transaction.
                          created_from_client_timezone:
                            type: string
                            example: '2024-04-25T12:44:16+0200'
                            description: Fecha de creación de la transacción en la zona horaria del comercio.
                            x-description-i18n:
                              eng: Creation date of the transaction converted to the merchant's timezone.
                          amount:
                            $ref: '#/components/schemas/Plan/properties/amount'
                          currency:
                            $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/currency'
                          paid:
                            $ref: '#/components/schemas/Order/properties/paid'
                          status:
                            $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/status'
                          refunded:
                            $ref: '#/components/schemas/Order/properties/refunded'
                          transactions:
                            type: array
                            items:
                              properties:
                                uuid:
                                  $ref: '#/components/schemas/Transaction/properties/uuid'
                                rrn:
                                  $ref: '#/paths/~1card-present~1refund/post/requestBody/content/application~1json/schema/properties/rrn'
                                stan:
                                  $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/stan'
                                created:
                                  type: string
                                  description: Fecha de creación de la transacción.
                                  x-description-i18n:
                                    eng: Creation date of the transaction.
                                created_from_client_timezone:
                                  $ref: '#/components/schemas/Order/properties/created_from_client_timezone'
                                operative:
                                  $ref: '#/components/schemas/TransactionOperative'
                                amount:
                                  $ref: '#/components/schemas/Plan/properties/amount'
                                authorization:
                                  $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/authorization'
                                processor_id:
                                  $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/processor_id'
                                status:
                                  $ref: '#/components/schemas/TransactionStatus'
                                error:
                                  $ref: '#/components/schemas/MoToCampaign/properties/error'
                                source:
                                  type: object
                                  properties:
                                    object:
                                      $ref: '#/components/schemas/APM/properties/object'
                                    uuid:
                                      $ref: '#/components/schemas/TapToPay/properties/uuid'
                                    type:
                                      $ref: '#/components/schemas/SourceTypeOnPayment'
                                    token:
                                      $ref: '#/components/schemas/Card/properties/token'
                                    brand:
                                      $ref: '#/components/schemas/Card/properties/brand'
                                    country:
                                      $ref: '#/components/schemas/Card/properties/country'
                                    bin:
                                      $ref: '#/components/schemas/Card/properties/bin'
                                    last4:
                                      $ref: '#/components/schemas/Card/properties/last4'
                                    expire_month:
                                      $ref: '#/components/schemas/Card/properties/expire_month'
                                    expire_year:
                                      $ref: '#/components/schemas/Card/properties/expire_year'
                                    bank:
                                      $ref: '#/components/schemas/Card/properties/bank'
                                    prepaid:
                                      $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/source/properties/prepaid'
                                    validation_date:
                                      $ref: '#/components/schemas/Paypal/properties/validation_date'
                                    creation_date:
                                      type: string
                                      description: Fecha de creación de la tarjeta en Paylands.
                                      x-description-i18n:
                                        eng: Card's creation date.
                                    brand_description:
                                      $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/source/properties/brand_description'
                                payment_data:
                                  type: object
                                  properties:
                                    new_emv_data:
                                      $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/payment_data/properties/new_emv_data'
                                    terminal_action:
                                      $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/payment_data/properties/terminal_action'
          description: OK
        '400':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Bad Request
                    code: 400
                    details: '<amount> parameter is not numeric. Please, review documentation.'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseKO'
          description: Bad Request
      summary: Preautorización
      x-summary-i18n:
        eng: Preauth
      description: Mediante esta operativa puedes lanzar una preautorización. Esta deberá ser confirmada o cancelada posteriormente.
      x-description-i18n:
        eng: 'Through this operation, you can initiate a preauth. It must be confirmed or canceled later.'
  /card-present/preauth/cancel:
    post:
      operationId: cancellation
      tags:
        - Card Present
      servers:
        - url: 'https://api.paylands.com/sandbox'
          description: Entorno de sandbox en card present
          x-description-i18n:
            eng: Card present sandbox environment
        - url: 'https://api.paylands.com'
          description: Entorno de producción en card present
          x-description-i18n:
            eng: Card present production environment
      parameters:
        - $ref: '#/paths/~1card-present~1sync/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                mid:
                  $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/mid'
                stan:
                  $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/stan'
                rrn:
                  $ref: '#/paths/~1card-present~1refund/post/requestBody/content/application~1json/schema/properties/rrn'
                tid:
                  $ref: '#/paths/~1card-present~1refund/post/requestBody/content/application~1json/schema/properties/tid'
              example:
                mid: '123456789'
                stan: '836425'
                rrn: 59CV8731
                tid: TerminalID123
              required:
                - mid
                - stan
                - rrn
                - tid
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-28T15:29:49+0100'
                    order:
                      uuid: 96A59A8B-2FCC-4306-92D8-7EA8712BAE5C
                      created: '2021-12-28T15:29:49+0100'
                      created_from_client_timezone: '2021-12-28T16:29:49+0200'
                      amount: 1
                      currency: 978
                      paid: true
                      status: SUCCESS
                      refunded: 0
                      transactions:
                        - uuid: 27A8CC56-97EA-4D4A-8349-4E27263CB123
                          rrn: A4358HT1
                          stan: '865714'
                          created: '2021-12-28T15:29:49+0100'
                          created_from_client_timezone: '2021-12-28T15:29:49+0100'
                          operative: DEFERRED
                          amount: 1
                          authorization: '6985142'
                          processor_id: CC2817B4-4F1D-41B9-ADCA-EA586E0CE796
                          status: SUCCESS
                          error: null
                          source:
                            object: CARD
                            uuid: 362B9A08-DD26-4139-A3C1-DD00CF5B1BB6
                            type: CREDIT
                            token: ebc9b5ffa2efcf74197734a071192817e6f2a3fc15f49c4b1bdb6edc46b16e3ab4109498bff8e6ba00fb6d2bd1838afbea67095c4caaa2f46e4acf4d5851884c
                            brand: VISA
                            country: ES
                            bin: 418233
                            last4: '4321'
                            expire_month: '12'
                            expire_year: '29'
                            bank: 'SERVIRED, SOCIEDAD ESPANOLA DE MEDIOS DE PAGO, S.A.'
                            prepaid: false
                            validation_date: '2021-12-28T15:29:49+0100'
                            creation_date: '2021-12-28T15:29:49+0100'
                            brand_description: Standard Mastercard Card
                        - uuid: 27A8CC56-97EA-4D4A-8349-4E27263CB123
                          rrn: A4358HT1
                          stan: '865715'
                          created: '2021-12-28T15:29:49+0100'
                          created_from_client_timezone: '2021-12-28T15:29:49+0100'
                          operative: CANCELLATION
                          amount: 1
                          authorization: '6985142'
                          processor_id: CC2817B4-4F1D-41B9-ADCA-EA586E0CE796
                          status: SUCCESS
                          error: null
                          source: null
                    client:
                      uuid: 42B8CF56-A7D7-4D4A-8349-4E27263CB2D5
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      order:
                        type: object
                        properties:
                          uuid:
                            $ref: '#/components/schemas/Order/properties/uuid'
                          created:
                            type: string
                            description: Fecha de creación de la transacción.
                            x-description-i18n:
                              eng: Creation date of the transaction.
                          created_from_client_timezone:
                            type: string
                            example: '2024-04-25T12:44:16+0200'
                            description: Fecha de creación de la transacción en la zona horaria del comercio.
                            x-description-i18n:
                              eng: Creation date of the transaction converted to the merchant's timezone.
                          amount:
                            $ref: '#/components/schemas/Plan/properties/amount'
                          currency:
                            $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/currency'
                          paid:
                            $ref: '#/components/schemas/Order/properties/paid'
                          status:
                            $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/status'
                          refunded:
                            $ref: '#/components/schemas/Order/properties/refunded'
                          transactions:
                            type: array
                            items:
                              properties:
                                uuid:
                                  $ref: '#/components/schemas/Transaction/properties/uuid'
                                rrn:
                                  $ref: '#/paths/~1card-present~1refund/post/requestBody/content/application~1json/schema/properties/rrn'
                                stan:
                                  $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/stan'
                                created:
                                  type: string
                                  description: Fecha de creación de la transacción.
                                  x-description-i18n:
                                    eng: Creation date of the transaction.
                                created_from_client_timezone:
                                  $ref: '#/components/schemas/Order/properties/created_from_client_timezone'
                                operative:
                                  $ref: '#/components/schemas/TransactionOperative'
                                amount:
                                  $ref: '#/components/schemas/Plan/properties/amount'
                                authorization:
                                  $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/authorization'
                                processor_id:
                                  $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/processor_id'
                                status:
                                  $ref: '#/components/schemas/TransactionStatus'
                                error:
                                  $ref: '#/components/schemas/MoToCampaign/properties/error'
                                source:
                                  type: object
                                  properties:
                                    object:
                                      $ref: '#/components/schemas/APM/properties/object'
                                    uuid:
                                      $ref: '#/components/schemas/TapToPay/properties/uuid'
                                    type:
                                      $ref: '#/components/schemas/SourceTypeOnPayment'
                                    token:
                                      $ref: '#/components/schemas/Card/properties/token'
                                    brand:
                                      $ref: '#/components/schemas/Card/properties/brand'
                                    country:
                                      $ref: '#/components/schemas/Card/properties/country'
                                    bin:
                                      $ref: '#/components/schemas/Card/properties/bin'
                                    last4:
                                      $ref: '#/components/schemas/Card/properties/last4'
                                    expire_month:
                                      $ref: '#/components/schemas/Card/properties/expire_month'
                                    expire_year:
                                      $ref: '#/components/schemas/Card/properties/expire_year'
                                    bank:
                                      $ref: '#/components/schemas/Card/properties/bank'
                                    prepaid:
                                      $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/source/properties/prepaid'
                                    validation_date:
                                      $ref: '#/components/schemas/Paypal/properties/validation_date'
                                    creation_date:
                                      type: string
                                      description: Fecha de creación de la tarjeta en Paylands.
                                      x-description-i18n:
                                        eng: Card's creation date.
                                    brand_description:
                                      $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/source/properties/brand_description'
          description: OK
        '400':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Bad Request
                    code: 400
                    details: Transaction identifiers not found for the given Stan.
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseKO'
          description: Bad Request
      summary: Cancelar preautorización
      x-summary-i18n:
        eng: Cancel preauth
      description: Mediante esta operativa se libera el saldo retenido por una operación preautorizada.
      x-description-i18n:
        eng: This endpoint frees the balance being held by a preauth operative.
  /card-present/preauth/confirm:
    post:
      operationId: confirmation
      tags:
        - Card Present
      parameters:
        - $ref: '#/paths/~1card-present~1sync/get/parameters/0'
      servers:
        - url: 'https://api.paylands.com/sandbox'
          description: Entorno de sandbox en card present
          x-description-i18n:
            eng: Card present sandbox environment
        - url: 'https://api.paylands.com'
          description: Entorno de producción en card present
          x-description-i18n:
            eng: Card present production environment
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                amount:
                  $ref: '#/components/schemas/Plan/properties/amount'
                mid:
                  $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/mid'
                stan:
                  $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/stan'
                rrn:
                  $ref: '#/paths/~1card-present~1refund/post/requestBody/content/application~1json/schema/properties/rrn'
                tid:
                  $ref: '#/paths/~1card-present~1refund/post/requestBody/content/application~1json/schema/properties/tid'
              example:
                amount: 100
                mid: '123456789'
                stan: '836425'
                rrn: 59CV8731
                tid: TerminalID123
              required:
                - mid
                - stan
                - rrn
                - tid
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-28T15:29:49+0100'
                    order:
                      uuid: 96A59A8B-2FCC-4306-92D8-7EA8712BAE5C
                      created: '2021-12-28T15:29:49+0100'
                      created_from_client_timezone: '2021-12-28T16:29:49+0200'
                      amount: 1
                      currency: 978
                      paid: true
                      status: SUCCESS
                      refunded: 0
                      transactions:
                        - uuid: 27A8CC56-97EA-4D4A-8349-4E27263CB123
                          rrn: A4358HT1
                          stan: '865714'
                          created: '2021-12-28T15:29:49+0100'
                          created_from_client_timezone: '2021-12-28T15:29:49+0100'
                          operative: DEFERRED
                          amount: 1
                          authorization: '6985142'
                          processor_id: CC2817B4-4F1D-41B9-ADCA-EA586E0CE796
                          status: SUCCESS
                          error: null
                          source:
                            object: CARD
                            uuid: 362B9A08-DD26-4139-A3C1-DD00CF5B1BB6
                            type: CREDIT
                            token: ebc9b5ffa2efcf74197734a071192817e6f2a3fc15f49c4b1bdb6edc46b16e3ab4109498bff8e6ba00fb6d2bd1838afbea67095c4caaa2f46e4acf4d5851884c
                            brand: VISA
                            country: ES
                            bin: 418233
                            last4: '4321'
                            expire_month: '12'
                            expire_year: '29'
                            bank: 'SERVIRED, SOCIEDAD ESPANOLA DE MEDIOS DE PAGO, S.A.'
                            prepaid: false
                            validation_date: '2021-12-28T15:29:49+0100'
                            creation_date: '2021-12-28T15:29:49+0100'
                            brand_description: Standard Mastercard Card
                        - uuid: 27A8CC56-97EA-4D4A-8349-4E27263CB123
                          rrn: A4358HT1
                          stan: '865715'
                          created: '2021-12-28T15:29:49+0100'
                          created_from_client_timezone: '2021-12-28T15:29:49+0100'
                          operative: CONFIRMATION
                          amount: 1
                          authorization: '6985142'
                          processor_id: CC2817B4-4F1D-41B9-ADCA-EA586E0CE796
                          status: SUCCESS
                          error: null
                          source: null
                    client:
                      uuid: 42B8CF56-A7D7-4D4A-8349-4E27263CB2D5
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      order:
                        type: object
                        properties:
                          uuid:
                            $ref: '#/components/schemas/Order/properties/uuid'
                          created:
                            type: string
                            description: Fecha de creación de la transacción.
                            x-description-i18n:
                              eng: Creation date of the transaction.
                          created_from_client_timezone:
                            type: string
                            example: '2024-04-25T12:44:16+0200'
                            description: Fecha de creación de la transacción en la zona horaria del comercio.
                            x-description-i18n:
                              eng: Creation date of the transaction converted to the merchant's timezone.
                          amount:
                            $ref: '#/components/schemas/Plan/properties/amount'
                          currency:
                            $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/currency'
                          paid:
                            $ref: '#/components/schemas/Order/properties/paid'
                          status:
                            $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/status'
                          refunded:
                            $ref: '#/components/schemas/Order/properties/refunded'
                          transactions:
                            type: array
                            items:
                              properties:
                                uuid:
                                  $ref: '#/components/schemas/Transaction/properties/uuid'
                                rrn:
                                  $ref: '#/paths/~1card-present~1refund/post/requestBody/content/application~1json/schema/properties/rrn'
                                stan:
                                  $ref: '#/paths/~1card-present~1charge/post/requestBody/content/application~1json/schema/properties/stan'
                                created:
                                  type: string
                                  description: Fecha de creación de la transacción.
                                  x-description-i18n:
                                    eng: Creation date of the transaction.
                                created_from_client_timezone:
                                  $ref: '#/components/schemas/Order/properties/created_from_client_timezone'
                                operative:
                                  $ref: '#/components/schemas/TransactionOperative'
                                amount:
                                  $ref: '#/components/schemas/Plan/properties/amount'
                                authorization:
                                  $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/authorization'
                                processor_id:
                                  $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/processor_id'
                                status:
                                  $ref: '#/components/schemas/TransactionStatus'
                                error:
                                  $ref: '#/components/schemas/MoToCampaign/properties/error'
                                source:
                                  type: object
                                  properties:
                                    object:
                                      $ref: '#/components/schemas/APM/properties/object'
                                    uuid:
                                      $ref: '#/components/schemas/TapToPay/properties/uuid'
                                    type:
                                      $ref: '#/components/schemas/SourceTypeOnPayment'
                                    token:
                                      $ref: '#/components/schemas/Card/properties/token'
                                    brand:
                                      $ref: '#/components/schemas/Card/properties/brand'
                                    country:
                                      $ref: '#/components/schemas/Card/properties/country'
                                    bin:
                                      $ref: '#/components/schemas/Card/properties/bin'
                                    last4:
                                      $ref: '#/components/schemas/Card/properties/last4'
                                    expire_month:
                                      $ref: '#/components/schemas/Card/properties/expire_month'
                                    expire_year:
                                      $ref: '#/components/schemas/Card/properties/expire_year'
                                    bank:
                                      $ref: '#/components/schemas/Card/properties/bank'
                                    prepaid:
                                      $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/source/properties/prepaid'
                                    validation_date:
                                      $ref: '#/components/schemas/Paypal/properties/validation_date'
                                    creation_date:
                                      type: string
                                      description: Fecha de creación de la tarjeta en Paylands.
                                      x-description-i18n:
                                        eng: Card's creation date.
                                    brand_description:
                                      $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/source/properties/brand_description'
          description: OK
        '400':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Bad Request
                    code: 400
                    details: Transaction identifiers not found for the given Stan.
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseKO'
          description: Bad Request
      summary: Confirmar preautorización
      x-summary-i18n:
        eng: Confirm preauth
      description: Mediante esta operativa se confirma el saldo retenido por una operación preautorizada.
      x-description-i18n:
        eng: This endpoint charges the balance being held by a preauth operative.
  '/card-present/order/stan/{stan}':
    get:
      servers:
        - url: 'https://api.paylands.com/sandbox'
          description: Entorno de sandbox en card present
          x-description-i18n:
            eng: Card present sandbox environment
        - url: 'https://api.paylands.com'
          description: Entorno de producción en card present
          x-description-i18n:
            eng: Card present production environment
      operationId: get-order-by-stan
      tags:
        - Card Present
      parameters:
        - $ref: '#/paths/~1card-present~1sync/get/parameters/0'
        - $ref: '#/paths/~1card-present~1sync/get/parameters/2'
        - $ref: '#/paths/~1card-present~1sync/get/parameters/1'
        - name: stan
          in: path
          required: true
          example: 1f405222
          schema:
            type: string
          description: Identificador de operación.
          x-description-i18n:
            eng: System trace audit number.
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-17T11:46:00+0100'
                    order:
                      uuid: 69FF7D60-4EB0-41EC-A249-F08A835ACA67
                      created: '2021-12-17T11:44:47+0100'
                      created_from_client_timezone: '2021-12-17T12:44:47+0200'
                      amount: 1
                      currency: 978
                      paid: true
                      status: SUCCESS
                      safe: true
                      refunded: 0
                      additional: ''
                      service: CLEARHAUS
                      service_uuid: B170C6F6-C6C6-4D4A-A34D-671A0829CE06
                      customer: test
                      cof_txnid: null
                      transactions:
                        - uuid: 3BD0B81B-231B-490E-B64C-C41923192EE6
                          created: '2021-12-17T11:44:53+0100'
                          created_from_client_timezone: '2021-12-17T12:44:53+0200'
                          operative: AUTHORIZATION
                          amount: 1
                          authorization: 5ed70eff-dec4-464f-bbe1-d2f75d4e2d07
                          processor_id: af99YE6wQeyiSfCKg1rKZw==
                          status: SUCCESS
                          error: NONE
                          source:
                            object: CARD
                            uuid: ED77409F-3398-4DFB-B035-7B5177752358
                            type: CREDIT
                            token: 54e02bf8d6fca227efc41ad3fcda073e0cce45ed047be18c077e389d658970a02ab5e861096d31a38c93c90b35634d91a1b9019ac897723cf7eb70f758715ff4
                            brand: VISA
                            country: US
                            holder: AARON ARRIERO DIAGO
                            bin: 416598
                            last4: '6089'
                            is_saved: false
                            expire_month: 09
                            expire_year: '26'
                            additional: null
                            bank: ''
                            prepaid: false
                            validation_date: '2021-12-17 11:45:54'
                            creation_date: '2021-12-17 11:45:31'
                            brand_description: null
                          antifraud: null
                          device:
                            fingerprint: '2611196874'
                            user_agent: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:94.0) Gecko/20100101 Firefox/94.0'
                          pos:
                            requestor_id: DEVICE
                            pos_device_id: 618b776097ab7c36e15e235f
                            reversal: false
                            brand: MASTERCARD
                            masked_pan: 540205******6010
                            verification_method: 'NO'
                            entry_mode: CLESS
                          metadata:
                            key1: value1
                            key2: value2
                            key3: value3
                      token: null
                      ip: 127.0.0.1
                      reference: null
                      dynamic_descriptor: null
                      threeds_data:
                        version: '2.2'
                        flow: FULL
                        sca_requested: false
                        status: 'Y'
                        eci: '05'
                        exemption: null
                      cardpresent_device:
                        mid: MID0001
                        tid: DID001
                        is_enabled: true
                        service_uuid: 689D05E5-41E5-48C9-922C-B9DE458EABDC
                        serial_number: SN1234
                        created: '2024-01-01T00:00:00+0100'
                        provider: CPPROVIDER1234
                        model: ANDROID AXIUM DX8000
                    client:
                      uuid: 42B8CF56-A7D7-4D4A-8349-4E27263CB2D5
                    validation_hash: 69fa69f2e333e5199357a33bb06d048495c86ca38ba822e4aa4c38405f6648c0
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      client:
                        $ref: '#/components/schemas/Client'
                      order:
                        $ref: '#/components/schemas/Order'
                required:
                  - order
                  - client
          description: OK
        '404':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Not Found
                    code: 404
                    details: Order not found
              schema:
                $ref: '#/components/schemas/ResponseKO'
          description: Not Found
      summary: Obtener orden vía STAN
      description: 'Este método devuelve la información asociada a una orden, pudiendo ver el estado en el que se encuentra y sus transacciones.'
      x-description-i18n:
        eng: 'This endpoint returns all the information about an order, including its current status and transactions.'
      x-summary-i18n:
        eng: Get order by STAN
  '/card-present/order/rrn/{rrn}':
    get:
      operationId: get-order-by-rrn
      tags:
        - Card Present
      servers:
        - url: 'https://api.paylands.com/sandbox'
          description: Entorno de sandbox en card present
          x-description-i18n:
            eng: Card present sandbox environment
        - url: 'https://api.paylands.com'
          description: Entorno de producción en card present
          x-description-i18n:
            eng: Card present production environment
      parameters:
        - $ref: '#/paths/~1card-present~1sync/get/parameters/0'
        - $ref: '#/paths/~1card-present~1sync/get/parameters/2'
        - $ref: '#/paths/~1card-present~1sync/get/parameters/1'
        - name: rrn
          in: path
          required: true
          example: '11405222'
          schema:
            type: string
          description: Identificador de operación.
          x-description-i18n:
            eng: System trace audit number.
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-17T11:46:00+0100'
                    order:
                      uuid: 69FF7D60-4EB0-41EC-A249-F08A835ACA67
                      created: '2021-12-17T11:44:47+0100'
                      created_from_client_timezone: '2021-12-17T12:44:47+0200'
                      amount: 1
                      currency: 978
                      paid: true
                      status: SUCCESS
                      safe: true
                      refunded: 0
                      additional: ''
                      service: CLEARHAUS
                      service_uuid: B170C6F6-C6C6-4D4A-A34D-671A0829CE06
                      customer: test
                      cof_txnid: null
                      transactions:
                        - uuid: 3BD0B81B-231B-490E-B64C-C41923192EE6
                          created: '2021-12-17T11:44:53+0100'
                          created_from_client_timezone: '2021-12-17T12:44:53+0200'
                          operative: AUTHORIZATION
                          amount: 1
                          authorization: 5ed70eff-dec4-464f-bbe1-d2f75d4e2d07
                          processor_id: af99YE6wQeyiSfCKg1rKZw==
                          status: SUCCESS
                          error: NONE
                          source:
                            object: CARD
                            uuid: ED77409F-3398-4DFB-B035-7B5177752358
                            type: CREDIT
                            token: 54e02bf8d6fca227efc41ad3fcda073e0cce45ed047be18c077e389d658970a02ab5e861096d31a38c93c90b35634d91a1b9019ac897723cf7eb70f758715ff4
                            brand: VISA
                            country: US
                            holder: JOSE MARIA
                            bin: 416598
                            last4: '6089'
                            is_saved: false
                            expire_month: 09
                            expire_year: '26'
                            additional: null
                            bank: ''
                            prepaid: false
                            validation_date: '2021-12-17 11:45:54'
                            creation_date: '2021-12-17 11:45:31'
                            brand_description: null
                          antifraud: null
                          device:
                            fingerprint: '2611196874'
                            user_agent: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:94.0) Gecko/20100101 Firefox/94.0'
                          pos:
                            requestor_id: DEVICE
                            pos_device_id: 618b776097ab7c36e15e235f
                            reversal: false
                            brand: MASTERCARD
                            masked_pan: 540205******6010
                            verification_method: 'NO'
                            entry_mode: CLESS
                          metadata:
                            key1: value1
                            key2: value2
                            key3: value3
                      token: null
                      ip: 127.0.0.1
                      reference: null
                      dynamic_descriptor: null
                      threeds_data:
                        version: '2.2'
                        flow: FULL
                        sca_requested: false
                        status: 'Y'
                        eci: '05'
                        exemption: null
                      cardpresent_device:
                        mid: MID0001
                        tid: DID001
                        is_enabled: true
                        service_uuid: 689D05E5-41E5-48C9-922C-B9DE458EABDC
                        serial_number: SN1234
                        created: '2024-01-01T00:00:00+0100'
                        provider: CPPROVIDER1234
                        model: ANDROID AXIUM DX8000
                    client:
                      uuid: 42B8CF56-A7D7-4D4A-8349-4E27263CB2D5
                    validation_hash: 69fa69f2e333e5199357a33bb06d048495c86ca38ba822e4aa4c38405f6648c0
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      client:
                        $ref: '#/components/schemas/Client'
                      order:
                        $ref: '#/components/schemas/Order'
                required:
                  - order
                  - client
          description: OK
        '404':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Not Found
                    code: 404
                    details: Order not found
              schema:
                $ref: '#/components/schemas/ResponseKO'
          description: Not Found
      summary: Obtener orden vía RRN
      description: 'Este método devuelve la información asociada a una orden, pudiendo ver el estado en el que se encuentra y sus transacciones.'
      x-description-i18n:
        eng: 'This endpoint returns all the information about an order, including its current status and transactions.'
      x-summary-i18n:
        eng: Get order by RRN
  '/payment-method/{payment-method}/verify-holder':
    post:
      operationId: verify-source-holder
      tags:
        - Common operations
        - Operaciones comunes
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: payment-method
          in: path
          required: true
          example: card
          schema:
            type: string
            enum:
              - card
              - dynamic_card
              - bank
          description: Tipo de del medio de pago (source).
          x-description-i18n:
            eng: Source type.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              description: Cuerpo de la petición para verificar la titularidad de un medio de pago (Source Holder Verification).
              x-description-i18n:
                eng: Request body to verify the ownership of a payment method (Source Holder Verification).
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                source_uuid:
                  $ref: '#/components/schemas/TapToPay/properties/uuid'
                service:
                  $ref: '#/components/schemas/Order/properties/service_uuid'
                verification_method:
                  type: string
                  enum:
                    - NAME
                    - IDENTIFICATION_NUMBER
                  description: 'Método utilizado para verificar la titularidad del medio de pago. Si no se especifica, se utiliza NAME.'
                  x-description-i18n:
                    eng: 'Method used to verify the ownership of the payment source. If not specified, NAME is used.'
                holder:
                  type: object
                  description: Datos del titular que se usarán para la verificación.
                  x-description-i18n:
                    eng: Holder data used for verification.
                  properties:
                    first_name:
                      type: string
                      description: Nombre del titular a verificar.
                      x-description-i18n:
                        eng: Holder first name to be verified.
                    last_name:
                      type: string
                      description: Apellidos del titular a verificar.
                      x-description-i18n:
                        eng: Holder last name to be verified.
                    identification_number:
                      type: string
                      description: 'Identificador legal del titular del medio de pago (por ejemplo, NIF, DNI, pasaporte o número de registro de empresa).'
                      x-description-i18n:
                        eng: 'Legal identifier of the payment source holder (e.g. tax ID, national ID, passport or company registration number).'
                  required:
                    - first_name
                  additionalProperties: false
              required:
                - signature
                - source_uuid
                - service
                - holder
              additionalProperties: false
            examples:
              default:
                summary: Verificación de titular de un source
                value:
                  signature: 121149a0ba5361191d740fa898784a8b
                  source_uuid: EEE99130-218B-4E22-90E2-E55B845DF0D4
                  service: E8952860-5441-45A2-9233-33651DABA250
                  holder:
                    first_name: Luis
                    last_name: Pérez López
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - type: object
                    description: Resultado de la verificación del titular del medio de pago.
                    x-description-i18n:
                      eng: Source Holder Verification result.
                    properties:
                      verification:
                        type: object
                        description: Resultado del intento de verificación SHV.
                        x-description-i18n:
                          eng: SHV verification attempt result.
                        properties:
                          uuid:
                            type: string
                            format: uuid
                            description: Identificador único de la verificación realizada.
                            x-description-i18n:
                              eng: Unique identifier of the performed verification.
                          status:
                            type: string
                            description: Estado final del intento de verificación.
                            x-description-i18n:
                              eng: Final verification attempt status.
                            enum:
                              - PERFORMED
                              - NOT_PERFORMED
                              - NOT_SUPPORTED
                              - FAILED
                              - ERROR
                          match_result:
                            type: string
                            nullable: true
                            description: Resultado de coincidencia cuando la verificación ha sido realizada.
                            x-description-i18n:
                              eng: Match result when verification has been performed.
                            enum:
                              - MATCH
                              - PARTIAL_MATCH
                              - NO_MATCH
                          error:
                            type: string
                            nullable: true
                            description: Error producido durante la verificación si aplica.
                            x-description-i18n:
                              eng: Error produced during verification if any.
                          policy_action:
                            type: string
                            nullable: true
                            description: 'No aplica en este endpoint, siempre será null.'
                            x-description-i18n:
                              eng: 'Not applicable for this endpoint, always null.'
                          verification_method:
                            type: string
                            nullable: false
                            enum:
                              - NAME
                              - IDENTIFICATION_NUMBER
                            description: Método utilizado para verificar la titularidad del medio de pago.
                            x-description-i18n:
                              eng: Method used to verify the ownership of the payment source.
                        required:
                          - uuid
                          - status
                          - match_result
                          - error
                          - policy_action
                          - verification_method
                        additionalProperties: false
                    required:
                      - verification
              examples:
                default:
                  summary: Resultado de verificación SHV
                  value:
                    message: OK
                    code: 200
                    current_time: '2026-02-24T14:35:01+0100'
                    verification:
                      uuid: A8CABF0C-C690-46C7-9F4B-E6AC3F929799
                      status: PERFORMED
                      match_result: MATCH
                      error: null
                      policy_action: null
                      verification_method: NAME
        '404':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Not Found
                    code: 404
                    details: Source not found
              schema:
                $ref: '#/components/schemas/ResponseKO'
          description: Not Found
      summary: Verificar titular del medio de pago
      description: 'Mediante este endpoint se puede verificar la titularidad de un **source** (tarjeta o cuenta bancaria) comparando el nombre del titular indicado con el titular real del medio de pago. Devuelve el estado final del intento y, cuando se ha podido realizar, el resultado de coincidencia (`MATCH`, `PARTIAL_MATCH`, `NO_MATCH`).'
      x-description-i18n:
        eng: 'Through this endpoint you can verify the ownership of a **source** (card or bank account) by comparing the provided holder name with the real holder of the payment method. It returns the final attempt status and, when performed, the match result (`MATCH`, `PARTIAL_MATCH`, `NO_MATCH`).'
      x-summary-i18n:
        eng: Verify payment method holder
  /chargebacks:
    get:
      operationId: chargebacks
      tags:
        - Chargebacks
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                created_at_start:
                  type: string
                  example: '2024-10-01 12:08:45'
                  description: 'Chargebacks creados a partir de la fecha especificada en formato `YYYY-MM-DD HH:mm:ss`.'
                  x-description-i18n:
                    eng: 'Match the chargebacks created from the specified date in `YYYY-MM-DD HH:mm:ss` format.'
                created_at_end:
                  type: string
                  example: '2024-10-02 12:08:45'
                  description: 'Chargebacks creados hasta la fecha especificada en formato `YYYY-MM-DD HH:mm:ss`.'
                  x-description-i18n:
                    eng: Match the chargebacks created until the specified date in `YYYYMMDDHHmm` format.
                service_uuids:
                  type: array
                  items:
                    type: string
                    description: El UUID del servicio.
                    x-description-i18n:
                      eng: Service's UUID.
                  description: Array de service_uuids que se incluyen al listar chargebacks.
                  x-description-i18n:
                    eng: Service_uuids array that will be included when listing chargerbacks.
                client_uuids:
                  type: array
                  items:
                    type: string
                    description: El UUID del cliente.
                    x-description-i18n:
                      eng: Client's UUID.
                  description: Array de client_uuids que se incluyen al listar chargebacks.
                  x-description-i18n:
                    eng: Client_uuids array that will be included when listing chargerbacks.
                provider_status:
                  type: array
                  items:
                    type: string
                    enum:
                      - NOTIFIED
                      - CONFIRMED
                      - REFUNDED
                      - SECOND_CONFIRMED
                    description: Estados de chargeback.
                    x-description-i18n:
                      eng: Chargeback statuses.
                  description: Array de status que se incluyen al listar chargebacks.
                  x-description-i18n:
                    eng: Status array that will be included when listing chargerbacks.
                provider_status_resolution:
                  type: array
                  items:
                    type: string
                    enum:
                      - PENDING_RESOLUTION
                      - DISPUTED
                      - PRE_ARBITRATION
                      - SUCCESS
                      - FAILURE
                    description: Estados de resolución de chargeback.
                    x-description-i18n:
                      eng: Chargeback status resolutions.
                  description: Array de estados de resolución que se incluyen al listar chargebacks.
                  x-description-i18n:
                    eng: Status resolution array that will be included when listing chargerbacks.
                types:
                  type: array
                  items:
                    type: string
                    enum:
                      - CHARGEBACK
                      - CHARGEBACK_REFUND
                      - CHARGEBACK_RDR
                      - CHARGEBACK_RDR_REFUND
                    description: Tipos de chargeback.
                    x-description-i18n:
                      eng: Chargeback types.
                  description: Array de tipos de chargeback que se incluyen al listar.
                  x-description-i18n:
                    eng: Chargeback types array that will be included when listing.
                client_status:
                  type: array
                  items:
                    type: string
                    enum:
                      - NOTIFIED
                      - DISPUTED
                      - LOST
                      - WON
                    description: Estados de cliente de chargeback.
                    x-description-i18n:
                      eng: Chargeback client statuses.
                  description: Array de estados de cliente que se incluyen al listar chargebacks.
                  x-description-i18n:
                    eng: Client status array that will be included when listing chargerbacks.
                provider_types:
                  type: array
                  items:
                    type: string
                  description: Array de tipos de proveedor que se incluyen al listar chargebacks.
                  x-description-i18n:
                    eng: Provider types array that will be included when listing chargerbacks.
                posting_date_start:
                  type: string
                  example: '2024-10-01 12:08:45'
                  description: 'Chargebacks con fecha de publicación a partir de la fecha especificada en formato `YYYY-MM-DD HH:mm:ss`.'
                  x-description-i18n:
                    eng: 'Match the chargebacks with posting date from the specified date in `YYYY-MM-DD HH:mm:ss` format.'
                posting_date_end:
                  type: string
                  example: '2024-10-02 12:08:45'
                  description: 'Chargebacks con fecha de publicación hasta la fecha especificada en formato `YYYY-MM-DD HH:mm:ss`.'
                  x-description-i18n:
                    eng: Match the chargebacks with posting date until the specified date in `YYYYMMDDHHmm` format.
                origin_date_start:
                  type: string
                  example: '2024-10-01 12:08:45'
                  description: 'Chargebacks con fecha de origen a partir de la fecha especificada en formato `YYYY-MM-DD HH:mm:ss`.'
                  x-description-i18n:
                    eng: 'Match the chargebacks with origin date from the specified date in `YYYY-MM-DD HH:mm:ss` format.'
                origin_date_end:
                  type: string
                  example: '2024-10-02 12:08:45'
                  description: 'Chargebacks con fecha de origen hasta la fecha especificada en formato `YYYY-MM-DD HH:mm:ss`.'
                  x-description-i18n:
                    eng: Match the chargebacks with origin date until the specified date in `YYYYMMDDHHmm` format.
                dispute_due_date_start:
                  type: string
                  example: '2024-10-01 12:08:45'
                  description: 'Chargebacks con fecha de disputa de proveedor a partir de la fecha especificada en formato `YYYY-MM-DD HH:mm:ss`.'
                  x-description-i18n:
                    eng: 'Match the chargebacks with provider dispute date from the specified date in `YYYY-MM-DD HH:mm:ss` format.'
                dispute_due_date_end:
                  type: string
                  example: '2024-10-02 12:08:45'
                  description: 'Chargebacks con fecha de disputa de proveedor hasta la fecha especificada en formato `YYYY-MM-DD HH:mm:ss`.'
                  x-description-i18n:
                    eng: Match the chargebacks with provider dispute date until the specified date in `YYYYMMDDHHmm` format.
                confirmation_date_start:
                  type: string
                  example: '2024-10-01 12:08:45'
                  description: 'Chargebacks con fecha de confirmación a partir de la fecha especificada en formato `YYYY-MM-DD HH:mm:ss`.'
                  x-description-i18n:
                    eng: 'Match the chargebacks with confirmation date from the specified date in `YYYY-MM-DD HH:mm:ss` format.'
                confirmation_date_end:
                  type: string
                  example: '2024-10-02 12:08:45'
                  description: 'Chargebacks con fecha de confirmación hasta la fecha especificada en formato `YYYY-MM-DD HH:mm:ss`.'
                  x-description-i18n:
                    eng: Match the chargebacks with confirmation date until the specified date in `YYYYMMDDHHmm` format.
                reversal_date_start:
                  type: string
                  example: '2024-10-01 12:08:45'
                  description: 'Chargebacks con fecha de devolución a partir de la fecha especificada en formato `YYYY-MM-DD HH:mm:ss`.'
                  x-description-i18n:
                    eng: 'Match the chargebacks with reversal date from the specified date in `YYYY-MM-DD HH:mm:ss` format.'
                reversal_date_end:
                  type: string
                  example: '2024-10-02 12:08:45'
                  description: 'Chargebacks con fecha de devolución hasta la fecha especificada en formato `YYYY-MM-DD HH:mm:ss`.'
                  x-description-i18n:
                    eng: Match the chargebacks with reversal date until the specified date in `YYYYMMDDHHmm` format.
                second_confirmation_date_start:
                  type: string
                  example: '2024-10-01 12:08:45'
                  description: 'Chargebacks con fecha de segunda confirmación a partir de la fecha especificada en formato `YYYY-MM-DD HH:mm:ss`.'
                  x-description-i18n:
                    eng: 'Match the chargebacks with second confirmation date from the specified date in `YYYY-MM-DD HH:mm:ss` format.'
                second_confirmation_date_end:
                  type: string
                  example: '2024-10-02 12:08:45'
                  description: 'Chargebacks con fecha de segunda confirmación hasta la fecha especificada en formato `YYYY-MM-DD HH:mm:ss`.'
                  x-description-i18n:
                    eng: Match the chargebacks with second confirmation date until the specified date in `YYYYMMDDHHmm` format.
                dispute_date_start:
                  type: string
                  example: '2024-10-01 12:08:45'
                  description: 'Chargebacks con fecha de disputa a partir de la fecha especificada en formato `YYYY-MM-DD HH:mm:ss`.'
                  x-description-i18n:
                    eng: 'Match the chargebacks with dispute date from the specified date in `YYYY-MM-DD HH:mm:ss` format.'
                dispute_date_end:
                  type: string
                  example: '2024-10-02 12:08:45'
                  description: 'Chargebacks con fecha de disputa hasta la fecha especificada en formato `YYYY-MM-DD HH:mm:ss`.'
                  x-description-i18n:
                    eng: Match the chargebacks with dispute date until the specified date in `YYYYMMDDHHmm` format.
                updated_at_date_start:
                  type: string
                  example: '2024-10-01 12:08:45'
                  description: 'Chargebacks con fecha de última actualización a partir de la fecha especificada en formato `YYYY-MM-DD HH:mm:ss`.'
                  x-description-i18n:
                    eng: 'Match the chargebacks with last update date from the specified date in `YYYY-MM-DD HH:mm:ss` format.'
                updated_at_date_end:
                  type: string
                  example: '2024-10-02 12:08:45'
                  description: 'Chargebacks con fecha de última actualización hasta la fecha especificada en formato `YYYY-MM-DD HH:mm:ss`.'
                  x-description-i18n:
                    eng: Match the chargebacks with last update date until the specified date in `YYYYMMDDHHmm` format.
              example:
                created_at_start: '2024-10-01 12:08:45'
                created_at_end: '2024-10-02 12:08:45'
                service_uuids:
                  - 60A1F4C0-CC58-47A9-A0B9-868F9EF29045
                  - CBB4BB73-9139-4A0A-B29D-418EA228A6F7
                  - CD96D61A-8F49-4854-95C7-196EDA1F01DB
                client_uuids:
                  - C80894ED-5751-4B28-BE36-4A495315FDEC
                  - A24CAC87-EFB1-42D9-81E5-FC27E36E6218
                provider_status:
                  - NOTIFIED
                  - CONFIRMED
                provider_status_resolution:
                  - PENDING_RESOLUTION
                  - PRE_ARBITRATION
                  - FAILURE
                types:
                  - CHARGEBACK
                  - CHARGEBACK_RDR
                  - CHARGEBACK_RDR_REFUND
                client_status:
                  - DISPUTED
                  - NOTIFIED
                  - WON
                provider_types:
                  - TypeABC
                posting_date_start: '2024-10-01 12:08:45'
                posting_date_end: '2024-10-02 12:08:45'
                origin_date_start: '2024-10-01 12:08:45'
                origin_date_end: '2024-10-02 12:08:45'
                dispute_due_date_start: '2024-10-01 12:08:45'
                dispute_due_date_end: '2024-10-02 12:08:45'
                confirmation_date_start: '2024-10-01 12:08:45'
                confirmation_date_end: '2024-10-02 12:08:45'
                reversal_date_start: '2024-10-01 12:08:45'
                reversal_date_end: '2024-10-02 12:08:45'
                second_confirmation_date_start: '2024-10-01 12:08:45'
                second_confirmation_date_end: '2024-10-02 12:08:45'
                dispute_date_start: '2024-10-01 12:08:45'
                dispute_date_end: '2024-10-02 12:08:45'
                updated_at_start: '2024-10-01 12:08:45'
                updated_at_end: '2024-10-02 12:08:45'
              required:
                - created_at_start
                - created_at_end
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-29T10:14:14+0100'
                    chargebacks:
                      - chargeback:
                          external_chargeback_id: 133
                          type: CHARGEBACK
                          rule: CARD-DOMESTIC-D-CONSUMER
                          provider_status: NOTIFIED
                          provider_status_resolution: PENDING_RESOLUTION
                          additional_info: '17197890'
                          posting_date: '2024-10-16T00:00:00+0000'
                          transaction_type: CHARGEBACK
                          transaction_type_detail: 1st Chargeback Allocation
                          reason_code: '10.4'
                          reason_description: 'Other Fraud: Card-absent Environment / Condition'
                          dispute_due_date: '2024-10-16T00:00:00+0000'
                          days_left_to_dispute: 2
                          available_days_to_dispute: 10
                          confirmation_date: '2024-10-18T00:00:00+0000'
                          reversal_date: '2024-10-19T00:00:00+0000'
                          second_confirmation_date: '2024-10-20T00:00:00+0000'
                          provider_financial_status: PROVIDER_FINANCIAL_STATUS
                          dispute_date: '2024-11-28T12:50:37+0000'
                          client_status: WON
                          dispute_details: dispute details
                          dispute_attachment: 'https://test-url.com/dev/chargebacks/d4a6d54as65d4as6.xlsx?'
                          provider_type: CREDORAX
                          created_at: '2024-10-18T10:29:39+0000'
                          updated_at: '2024-12-23T16:18:43+0000'
                        origin_transaction:
                          wallet_transfer_id: 2833
                          currency: EUR
                          amount: 3.5
                          region: Domestic
                          rrn: '315221579876'
                          arn: '88892723152204653765432'
                          country: ESP
                          order_uuid: 9240C3F7840C48808499B1ED6DE446DD
                          transaction_uuid: ACC254909C2D4C119A7EFCE794744AA2
                          is_3ds: false
                          flow_3ds: '1'
                          origin_currency: EUR
                          origin_amount: 1.6
                          origin_date: '2024-10-16T06:01:35+0000'
                          card_number: 409012******0123
                          card_scheme: VISA
                          card_type: D
                          payment_id: GGG653e7c96b20d46A4V6A2GRWYP5EKT
                          authorization_code: '123456'
                          customer_external_id: BIASFGUA
                          terminal_type: CNP
                        business:
                          mid: R0055789
                          account_id: 571
                          account_name: Account name
                          business_id: 456
                          business_name: Business Name
                          merchant_name: Prueba
                          submerchant_id: '1'
                        service:
                          name: Service name
                          uuid: BBDEEBA0-32EF-43AC-B216-B5CAB045FBBB
                      - chargeback:
                          external_chargeback_id: 134
                          type: CHARGEBACK
                          rule: CARD-DOMESTIC-D-CONSUMER
                          provider_status: NOTIFIED
                          provider_status_resolution: PENDING_RESOLUTION
                          additional_info: '123457890'
                          posting_date: '2024-10-16T00:00:00+0000'
                          transaction_type: CHARGEBACK
                          transaction_type_detail: 1st Chargeback Allocation
                          reason_code: '10.4'
                          reason_description: 'Other Fraud: Card-absent Environment / Condition'
                          dispute_due_date: '2024-10-16T00:00:00+0000'
                          days_left_to_dispute: 9
                          available_days_to_dispute: 4
                          confirmation_date: '2024-10-18T00:00:00+0000'
                          reversal_date: '2024-10-19T00:00:00+0000'
                          second_confirmation_date: '2024-10-20T00:00:00+0000'
                          provider_financial_status: PROVIDER_FINANCIAL_STATUS
                          dispute_date: '2024-11-28T12:50:37+0000'
                          client_status: LOST
                          dispute_details: dispute details
                          dispute_attachment: 'https://test-url.com/dev/chargebacks/d4a6d54as65d4as6.xlsx?'
                          provider_type: CREDORAX
                          created_at: '2024-10-18T10:29:39+0000'
                          updated_at: '2024-12-23T16:18:43+0000'
                        origin_transaction:
                          wallet_transfer_id: 2834
                          currency: EUR
                          amount: 1.6
                          region: Domestic
                          rrn: '315221579876'
                          arn: '88892723152204653765432'
                          country: ESP
                          order_uuid: 9240C3F7840C48808499B1ED6DE446DD
                          transaction_uuid: ACC254909C2D4C119A7EFCE794744AA2
                          is_3ds: true
                          flow_3ds: '2'
                          origin_currency: EUR
                          origin_amount: 1.6
                          origin_date: '2024-10-16T06:01:35+0000'
                          card_number: 409012******0123
                          card_scheme: VISA
                          card_type: D
                          payment_id: GGG653e7c96b20d46A4V6A2GRWYP5EKT
                          authorization_code: '222456'
                          customer_external_id: ASDHFGHA
                          terminal_type: CNP
                        business:
                          mid: R0055789
                          account_id: 484
                          account_name: Account name
                          business_id: 786
                          business_name: Business Name
                          merchant_name: Prueba
                          submerchant_id: '8'
                        service:
                          name: Second service name
                          uuid: 2A0339AF-B1F3-4861-87FB-FEBFA2597C09
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      chargebacks:
                        type: array
                        items:
                          $ref: '#/paths/~1chargeback~1%7Barn%7D/get/responses/200/content/application~1json/schema/allOf/1'
          description: OK
        '400':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Bad Request
                    code: 400
                    details: Invalid configuration
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseKO'
          description: KO
      summary: Listar Chargebacks
      description: Endpoint para obtener el listado de chargebacks.
      x-description-i18n:
        eng: Endpoint to obtain chargebacks list.
      x-summary-i18n:
        eng: Chargeback list
  '/chargeback/{arn}':
    get:
      operationId: chargeback
      tags:
        - Chargebacks
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: arn
          in: path
          required: true
          example: '12345678901234567890123'
          schema:
            type: string
          description: Código ARN asociado al chargeback.
          x-description-i18n:
            eng: Chargeback ARN code.
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-29T10:14:14+0100'
                    chargeback:
                      external_chargeback_id: 133
                      type: CHARGEBACK
                      rule: CARD-DOMESTIC-D-CONSUMER
                      provider_status: NOTIFIED
                      provider_status_resolution: PENDING_RESOLUTION
                      additional_info: '17197890'
                      posting_date: '2024-10-16T00:00:00+0000'
                      transaction_type: CHARGEBACK
                      transaction_type_detail: 1st Chargeback Allocation
                      reason_code: '10.4'
                      reason_description: 'Other Fraud: Card-absent Environment / Condition'
                      dispute_due_date: '2024-10-16T00:00:00+0000'
                      days_left_to_dispute: 2
                      available_days_to_dispute: 10
                      confirmation_date: '2024-10-18T00:00:00+0000'
                      reversal_date: '2024-10-19T00:00:00+0000'
                      second_confirmation_date: '2024-10-20T00:00:00+0000'
                      provider_financial_status: PROVIDER_FINANCIAL_STATUS
                      dispute_date: '2024-11-28T12:50:37+0000'
                      client_status: WON
                      dispute_details: dispute details
                      dispute_attachment: 'https://test-url.com/dev/chargebacks/d4a6d54as65d4as6.xlsx?'
                      provider_type: CREDORAX
                      created_at: '2024-10-18T10:29:39+0000'
                      updated_at: '2024-12-23T16:18:43+0000'
                    origin_transaction:
                      wallet_transfer_id: 2833
                      currency: EUR
                      amount: 3.5
                      region: Domestic
                      rrn: '315221579876'
                      arn: '88892723152204653765432'
                      country: ESP
                      order_uuid: 9240C3F7840C48808499B1ED6DE446DD
                      transaction_uuid: ACC254909C2D4C119A7EFCE794744AA2
                      is_3ds: false
                      flow_3ds: '1'
                      origin_currency: EUR
                      origin_amount: 1.6
                      origin_date: '2024-10-16T06:01:35+0000'
                      card_number: 409012******0123
                      card_scheme: VISA
                      card_type: D
                      payment_id: GGG653e7c96b20d46A4V6A2GRWYP5EKT
                      authorization_code: '123456'
                      customer_external_id: BIASFGUA
                      terminal_type: CNP
                    business:
                      mid: R0055789
                      account_id: 571
                      account_name: Account name
                      business_id: 456
                      business_name: Business Name
                      merchant_name: Prueba
                      submerchant_id: '1'
                    service:
                      name: Service name
                      uuid: 2A0339AF-B1F3-4861-87FB-FEBFA2597C09
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
                  - properties:
                      chargeback:
                        type: object
                        properties:
                          external_chargeback_id:
                            type: number
                            description: Identificador del chargeback.
                            x-description-i18n:
                              eng: Chargeback identifier.
                          type:
                            type: string
                            description: Tipo de chargeback.
                            x-description-i18n:
                              eng: Chargeback type.
                          rule:
                            type: string
                            description: Regla del chargeback.
                            x-description-i18n:
                              eng: Chargeback rule.
                          provider_status:
                            type: string
                            description: Status del chargeback.
                            x-description-i18n:
                              eng: Chargeback status.
                          provider_status_resolution:
                            type: string
                            description: Status de resolución del chargeback.
                            x-description-i18n:
                              eng: Chargeback resolution status.
                          additional_info:
                            type: string
                            description: Información adicional.
                            x-description-i18n:
                              eng: Additional info.
                          posting_date:
                            type: string
                            description: Fecha de publicación.
                            x-description-i18n:
                              eng: Posting date.
                          transaction_type:
                            type: string
                            description: Tipo de transacción.
                            x-description-i18n:
                              eng: Transaction type.
                          transaction_type_detail:
                            type: string
                            description: Detalles del tipo de transacción.
                            x-description-i18n:
                              eng: Transaction type details.
                          reason_code:
                            type: string
                            description: Codigo de chargeback.
                            x-description-i18n:
                              eng: Chargeback code.
                          reason_description:
                            type: string
                            description: Descripción del chargeback.
                            x-description-i18n:
                              eng: Chargeback description.
                          dispute_due_date:
                            type: string
                            description: Fecha de disputa de proveedor.
                            x-description-i18n:
                              eng: Provider dispute date.
                          days_left_to_dispute:
                            type: number
                            description: Dias hasta fin de disputa.
                            x-description-i18n:
                              eng: Days until end of dispute.
                          available_days_to_dispute:
                            type: number
                            description: Dias disponibles para disputar.
                            x-description-i18n:
                              eng: Available days to dispute.
                          confirmation_date:
                            type: string
                            description: Fecha de confirmación.
                            x-description-i18n:
                              eng: Confirmation date.
                          reversal_date:
                            type: string
                            description: Fecha de devolución.
                            x-description-i18n:
                              eng: Reversal date.
                          second_confirmation_date:
                            type: string
                            description: Fecha de segunda confirmación.
                            x-description-i18n:
                              eng: Second confirmation date.
                          provider_financial_status:
                            type: string
                            description: Estado financiero proveedor.
                            x-description-i18n:
                              eng: Provider financial status.
                          dispute_date:
                            type: string
                            description: Fecha de disputa.
                            x-description-i18n:
                              eng: Dispute date.
                          client_status:
                            type: string
                            description: Estado.
                            x-description-i18n:
                              eng: Status.
                          dispute_details:
                            type: string
                            description: Detalles de la disputa.
                            x-description-i18n:
                              eng: Dispute details.
                          dispute_attachment:
                            type: string
                            description: Documento codificado en base64.
                            x-description-i18n:
                              eng: Base64 encoded document.
                          provider_type:
                            type: string
                            description: Tipo proveedor.
                            x-description-i18n:
                              eng: Provider type.
                          created_at:
                            type: string
                            description: Fecha de creación del chargeback.
                            x-description-i18n:
                              eng: Chargeback creation date.
                          updated_at:
                            type: string
                            description: Fecha de actualización del chargeback.
                            x-description-i18n:
                              eng: Chargeback update date.
                      origin_transaction:
                        type: object
                        properties:
                          wallet_transfer_id:
                            type: number
                            description: Identificador de la operación.
                            x-description-i18n:
                              eng: Operation identifier.
                          currency:
                            type: string
                            description: Divisa del chargeback.
                            x-description-i18n:
                              eng: Chargeback currency.
                          amount:
                            type: number
                            description: Importe del chargeback.
                            x-description-i18n:
                              eng: Chargeback amount.
                          region:
                            type: string
                            description: Region del chargeback.
                            x-description-i18n:
                              eng: Chargeback region.
                          rrn:
                            type: string
                            description: RRN del chargeback.
                            x-description-i18n:
                              eng: Chargeback RRN.
                          arn:
                            type: string
                            description: ARN del chargeback.
                            x-description-i18n:
                              eng: Chargeback ARN.
                          country:
                            type: string
                            description: Pais del chargeback.
                            x-description-i18n:
                              eng: Chargeback country.
                          order_uuid:
                            type: string
                            description: Identificador único de la orden.
                            x-description-i18n:
                              eng: Order unique identifier.
                          transaction_uuid:
                            type: string
                            description: Identificador único de la transacción.
                            x-description-i18n:
                              eng: Transaction unique identifier.
                          is_3ds:
                            type: boolean
                            description: Indica si la operación es 3DS.
                            x-description-i18n:
                              eng: Indicates whether the operation is correct.
                          flow_3ds:
                            type: string
                            description: Identificador del flujo 3DS.
                            x-description-i18n:
                              eng: 3DS flow identifier.
                          origin_currency:
                            type: string
                            description: Divisa de origen.
                            x-description-i18n:
                              eng: Origin currency.
                          origin_amount:
                            type: number
                            description: Importe de origen.
                            x-description-i18n:
                              eng: Origin amount.
                          origin_date:
                            type: string
                            description: Fecha de origen.
                            x-description-i18n:
                              eng: Origin date.
                          card_number:
                            type: string
                            description: Númeración de tarjeta.
                            x-description-i18n:
                              eng: Card number.
                          card_scheme:
                            type: string
                            description: Esquema de tarjeta.
                            x-description-i18n:
                              eng: Card scheme.
                          card_type:
                            type: string
                            description: Tipo de tarjeta.
                            x-description-i18n:
                              eng: Card type.
                          payment_id:
                            type: string
                            description: Identificador del pago.
                            x-description-i18n:
                              eng: Payment identifier.
                          authorization_code:
                            type: string
                            description: Codigo de autorización del pago.
                            x-description-i18n:
                              eng: Payment authorization code.
                          customer_external_id:
                            type: string
                            description: Identificador del cliente.
                            x-description-i18n:
                              eng: Client identifier.
                          terminal_type:
                            type: string
                            description: Tipo de terminal.
                            x-description-i18n:
                              eng: Terminal type.
                      business:
                        type: object
                        properties:
                          mid:
                            type: string
                            description: MID del chargeback.
                            x-description-i18n:
                              eng: Chargeback MID.
                          account_id:
                            type: number
                            description: Identificador de la cuenta.
                            x-description-i18n:
                              eng: Account identifier.
                          account_name:
                            type: string
                            description: Nombre de cuenta.
                            x-description-i18n:
                              eng: Account name.
                          business_id:
                            type: number
                            description: Identificador de la compañía.
                            x-description-i18n:
                              eng: Business identifier.
                          business_name:
                            type: string
                            description: Nombre de la compañía.
                            x-description-i18n:
                              eng: Business name.
                          merchant_name:
                            type: string
                            description: Nombre del comercio (Servicio).
                            x-description-i18n:
                              eng: Commerce name.
                          submerchant_id:
                            type: string
                            description: Identificador del subcomercio.
                            x-description-i18n:
                              eng: Submerchant identifier.
                      service:
                        type: object
                        properties:
                          name:
                            type: string
                            description: Nombre del servicio.
                            x-description-i18n:
                              eng: Service name.
                          uuid:
                            type: string
                            description: Identificador único del servicio.
                            x-description-i18n:
                              eng: Service unique identifier.
          description: OK
        '400':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Bad Request
                    code: 400
                    details: Invalid configuration
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseKO'
          description: KO
      summary: Obtener
      description: Endpoint para obtener un chargeback por ARN.
      x-description-i18n:
        eng: Endpoint to obtain a chargeback by ARN.
      x-summary-i18n:
        eng: Get
  '/chargeback/{arn}/accept':
    patch:
      operationId: accept-chargeback
      tags:
        - Chargebacks
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: arn
          in: path
          required: true
          example: '12345678901234567890123'
          schema:
            type: string
          description: Código ARN asociado al chargeback.
          x-description-i18n:
            eng: Chargeback ARN code.
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-29T10:14:14+0100'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
          description: OK
        '400':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Bad Request
                    code: 400
                    details: Invalid configuration
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseKO'
          description: KO
      summary: Aceptar disputa
      description: Endpoint para aceptar una disputa de un chargeback por ARN.
      x-description-i18n:
        eng: Endpoint to accept a chargeback dispute by ARN.
      x-summary-i18n:
        eng: Accept dispute
  '/chargeback/{arn}/dispute':
    post:
      operationId: chargeback-dispute
      tags:
        - Chargebacks
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: arn
          in: path
          required: true
          example: '12345678901234567890123'
          schema:
            type: string
          description: Código ARN asociado al chargeback.
          x-description-i18n:
            eng: Chargeback ARN code.
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
                attachment:
                  example: 'data:application/pdf;base64,SIDHFi0xLjYNJeLjz9M...'
                  type: string
                  description: Documento codificado en base64.
                  x-description-i18n:
                    eng: Base64 encoded document.
              example:
                signature: 121149a0ba5361191d740fa898784a8b
                attachment: 'data:application/pdf;base64,SIDHFi0xLjYNJeLjz9M...'
              required:
                - signature
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: OK
                    code: 200
                    current_time: '2021-12-29T10:14:14+0100'
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseOK'
          description: OK
        '400':
          content:
            application/json:
              examples:
                response:
                  value:
                    message: Bad Request
                    code: 400
                    details: Invalid configuration
              schema:
                allOf:
                  - $ref: '#/components/schemas/ResponseKO'
          description: KO
      summary: Disputar
      description: Endpoint para disputar chargebacks.
      x-description-i18n:
        eng: Endpoint to dispute chargebacks.
      x-summary-i18n:
        eng: Dispute
    patch:
      operationId: chargeback-dispute-cancel
      tags:
        - Chargebacks
      parameters:
        - $ref: '#/paths/~1/get/parameters/0'
        - name: arn
          in: path
          required: true
          example: '12345678901234567890123'
          schema:
            type: string
          description: Código ARN asociado al chargeback.
          x-description-i18n:
            eng: Chargeback ARN code.
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  $ref: '#/paths/~1user/post/requestBody/content/application~1json/schema/properties/signature'
              example:
                signature: 121149a0ba5361191d740fa898784a8b
              required:
                - signature
      responses:
        '200':
          $ref: '#/paths/~1chargeback~1%7Barn%7D~1dispute/post/responses/200'
        '400':
          $ref: '#/paths/~1chargeback~1%7Barn%7D~1dispute/post/responses/400'
      summary: Cancelar Disputa
      description: Endpoint para cancelar disputas de chargebacks.
      x-description-i18n:
        eng: Endpoint to cancel chargebacks disputes.
      x-summary-i18n:
        eng: Cancel dispute
components:
  schemas:
    APIKeyProfile:
      enum:
        - all
        - payment
        - refund
        - readonly
        - card
        - tokenize
        - moto
        - batch_authorization
        - batch_refund
        - keyentry
      type: string
    AccountType:
      enum:
        - ACCOUNT_NUMBER
        - BUSINESS
        - ACCOUNT_CLABE
        - CARD_NUMBER
        - INTEREST_CHECKING
        - MONEY_MARKET
        - MOBILE_PHONE_NUMBER
        - NOT_USED_FOR_THIS_BANK
        - PERSONAL
        - REGULAR_CHECKING
        - SAVING_ACCOUNT
      type: string
      description: Tipo de cuenta bancaria.
      x-description-i18n:
        eng: Type of bank account.
    Antifraud:
      description: Información antifraude asociada a la transacción. Disponible solo en transacciones de pago.
      x-description-i18n:
        eng: Antifraud information associated to the transaction. Available only on payment transactions.
      properties:
        evaluation:
          $ref: '#/components/schemas/AntifraudEvaluation'
        fraud_score:
          type: number
          description: 'Umbral de fraude configurado en el antifraude del servicio. Si `score` es igual o lo supera, el pago será marcado como fraudulento y no se intentará cobrar.'
          x-description-i18n:
            eng: 'Fraud threshold configured on the payment service. If `score` is equal or greater, the payment will be flagged as `"FRAUD"` and the payment will not go through.'
        risk_score:
          type: number
          description: 'Umbral de riesgo configurado en el antifraude del servicio. Si `score` es igual o lo supera, el pago deberá finalizarse mediante 3D Secure obligatoriamente.'
          x-description-i18n:
            eng: 'Risk threshold configured on the payment service. If `score` is equal or greater, the payment will be flagged as `"FRAUD"` and the payment will not go through.'
        score:
          type: number
          description: Puntuación total de las reglas antifraude evaluadas.
          x-description-i18n:
            eng: Total score of all the configured antifraud rules.
        triggered_rules:
          $ref: '#/components/schemas/AntifraudRules'
      required:
        - evaluation
        - score
        - risk_score
        - fraud_score
        - triggered_rules
      type: object
    AntifraudEvaluation:
      description: Resultado de la evaluación antifraude.
      x-description-i18n:
        eng: Antifraud evaluation result.
      enum:
        - TRUSTED
        - RISKY
        - FRAUD
        - WHITELISTED
        - BLACKLISTED
        - GREYLISTED
      type: string
    AntifraudRules:
      description: Listado de reglas antifraude activadas para esta transacción.
      x-description-i18n:
        eng: List of antifraud rules enabled for this transaction.
      type: array
    BTSAdditional:
      properties:
        reason:
          type: string
          description: Razón/motivo de la transferencia
      required:
        - reason
      type: object
    BTSAgent:
      properties:
        branch_sd:
          type: string
          description: Sucursal del agente
        country_cd:
          type: string
          description: Código de la ciudad del agente
        region_sd:
          type: string
          description: Código de la región del agente
        state_cd:
          type: string
          description: Código del estado/provincia del agente
      required:
        - region_sd
        - branch_sd
        - state_cd
        - country_cd
      type: object
    BTSBranch:
      properties:
        pay_agent_address:
          type: string
          description: Dirección del payment agent.
        pay_agent_branch_ds:
          type: string
          description: Descripción de la sucursal.
        pay_agent_branch_sd:
          type: string
          description: Código de la sucursal.
        pay_agent_cd:
          type: string
          description: Código del payment agent.
        pay_agent_city:
          type: string
          description: Nombre de la ciudad del payment agent.
        pay_agent_country_cd:
          type: string
          description: Código alpha 3 del país del payment agent.
        pay_agent_phone:
          type: string
          description: Número de teléfono del payment agent.
        pay_agent_region_sd:
          type: string
          description: Código de la región del payment agent.
        pay_agent_schedule:
          type: string
          description: Horario del payment agent.
        pay_agent_state_sd:
          type: string
          description: Código alpha 3 del estado del payment agent.
        pay_agent_zipcode:
          type: string
          description: Código postal del payment agent.
      required:
        - pay_agent_cd
        - pay_agent_region_sd
        - pay_agent_branch_sd
        - pay_agent_branch_ds
        - pay_agent_country_cd
        - pay_agent_state_sd
        - pay_agent_city
        - pay_agent_address
        - pay_agent_zipcode
        - pay_agent_phone
        - pay_agent_schedule
      type: object
    BTSDestination:
      properties:
        country_cd:
          type: string
          description: Código  ISO 3166 del país destino
        currency_cd:
          type: string
          description: Código ISO 4217 de la moneda destino
      required:
        - country_cd
        - currency_cd
      type: object
    BTSOrigin:
      properties:
        country_cd:
          type: string
          description: Código ISO 3166 del país origen
        currency_cd:
          type: string
          description: Código ISO 4217 de la moneda origen
      required:
        - country_cd
        - currency_cd
      type: object
    BTSPaymentAgent:
      properties:
        code:
          type: string
          description: Código del payment agent.
        description:
          type: string
          description: Descripción del payment agent.
      required:
        - code
        - description
      type: object
    BTSPaymentType:
      enum:
        - CSH
        - ACC
        - CSA
        - HMD
        - ATM
      type: string
    BTSPaymentTypeEntity:
      properties:
        dest_country_cd:
          type: string
          description: Código alpha 3 del país.
        dest_currency_cd:
          type: string
          description: Código alpha 3 de la moneda.
        pay_agent_cd:
          type: string
          description: Código del payment agent.
        payment_type_cd:
          allOf:
            - $ref: '#/components/schemas/BTSPaymentType'
      required:
        - pay_agent_cd
        - payment_type_cd
        - dest_country_cd
        - dest_currency_cd
      type: object
    BTSProduct:
      properties:
        destinationCountryCode:
          type: string
          description: Código alpha 3 del país de destino.
        destinationCurrencyCode:
          type: string
          description: Código alpha 3 de la moneda de destino.
        directedTransactionCode:
          type: string
          description: Código de la transacción dirigida.
        electronicFundsCode:
          type: string
          description: Código de los fondos electrónicos.
        originCountryCode:
          type: string
          description: Código alpha 3 del país de origen.
        originCurrencyCode:
          type: string
          description: Código alpha 3 de la moneda de origen.
        paymentTypeCode:
          type: string
          description: Código del tipo de pago.
        serviceCode:
          type: string
          description: Código del servicio.
      required:
        - serviceCode
        - originCountryCode
        - originCurrencyCode
        - destinationCountryCode
        - destinationCurrencyCode
        - paymentTypeCode
        - directedTransactionCode
        - electronicFundsCode
      type: object
    BTSRecipient:
      properties:
        account_uuid:
          type: string
          description: UUID de la cuenta del cliente asociado
        address_uuid:
          type: string
          description: UUID de la dirección del cliente asociado
        external_id:
          type: string
          description: ID externo del cliente asociado a la tarjeta
      required:
        - external_id
        - address_uuid
        - account_uuid
      type: object
    BTSRecipientAgent:
      properties:
        agent_cd:
          type: string
          description: Código del agente
        branch_sd:
          type: string
          description: Sucursal del agente
        region_sd:
          type: string
          description: Código de la región del agente
      required:
        - agent_cd
      type: object
    BTSSender:
      properties:
        account_uuid:
          type: string
          description: UUID de la cuenta del cliente asociado
        address_uuid:
          type: string
          description: UUID de la dirección del cliente asociado
        bank_cd:
          type: string
          description: Código del banco
        external_id:
          type: string
          description: ID externo del cliente asociado a la tarjeta
      required:
        - bank_cd
        - external_id
        - address_uuid
      type: object
    BTSSenderPaymentType:
      enum:
        - CSH
        - ACC
      type: string
    BTSState:
      properties:
        country_cd:
          type: string
          description: Código alpha 3 del país.
        state_cd:
          type: string
          description: Código alpha 3 del estado.
        state_sd:
          type: string
          description: Nombre del estado.
      required:
        - state_sd
        - state_cd
        - country_cd
      type: object
    BatchError:
      properties:
        line:
          type: number
          description: Línea del fichero en el que se ha producido el error.
          x-description-i18n:
            eng: The line containing the error in the file.
        msg:
          type: string
          description: Mensaje del error.
          x-description-i18n:
            eng: The error message.
      required:
        - line
        - msg
      type: object
    BatchStoreCardRequest:
      properties:
        additional:
          type: string
          description: Identificador que se asignará a la tarjeta almacenada
          x-description-i18n:
            eng: Identifier to be assigned to the stored card
        card_cvv:
          type: string
          description: CVV2/CVC de la tarjeta.
        card_expiry_month:
          type: string
          description: Mes de la fecha de caducidad de la tarjeta.
          x-description-i18n:
            eng: Month of the expiration date of the card.
        card_expiry_year:
          type: string
          description: Año de la fecha de caducidad de la tarjeta.
          x-description-i18n:
            eng: Year of the expiration date of the card.
        card_holder:
          type: string
          description: Nombre del titular de la tarjeta.
          x-description-i18n:
            eng: Card holder
        card_pan:
          type: string
          description: Número de la tarjeta.
          x-description-i18n:
            eng: Card number
        customer_ext_id:
          $ref: '#/components/schemas/Customer/properties/external_id'
        url_post:
          type: string
          description: URL en la que se recibirá una notificación con la información de la tarjeta almacenada
          x-description-i18n:
            eng: URL where a notification will be received with the stored card information
      required:
        - customer_ext_id
        - card_holder
        - card_pan
        - card_expiry_year
        - card_expiry_month
      type: object
    Client:
      type: object
      properties:
        uuid:
          type: string
          description: Identificador del cliente.
          x-description-i18n:
            eng: Unique identifier of the client.
      required:
        - uuid
    Company:
      properties:
        created_at:
          $ref: '#/components/schemas/Order/properties/created'
        external_id:
          type: string
          description: 'La referencia de la compañía. Por defecto, es el mismo que el UUID de cliente de Paylands.'
          nullable: true
          x-description-i18n:
            eng: The company's reference. By default it matches the client UUID that created it.
        name:
          type: string
          description: 'El nombre de la compañía. Por defecto, es el mismo que el de cliente de Paylands.'
          x-description-i18n:
            eng: The name of the company. By default it matches the client name that created it.
        updated_at:
          $ref: '#/components/schemas/Plan/properties/updated_at'
      required:
        - name
        - external_id
        - created_at
        - updated_at
      type: object
    Customer:
      type: object
      properties:
        external_id:
          type: string
          description: ID externo otorgado por el comercio para identificar de forma única a un usuario.
          x-description-i18n:
            eng: External ID provided by the merchant to uniquely identify a customer.
      required:
        - external_id
    CreatedAt:
      type: string
      description: Fecha de creación de la entidad.
      x-description-i18n:
        eng: Creation date of the entity.
    AddressType:
      enum:
        - OTHER
        - BILLING
        - SHIPPING
      type: string
      description: Tipo de dirección.
      x-description-i18n:
        eng: Type of address.
    Phone:
      description: Número de teléfono del usuario.
      x-description-i18n:
        eng: The customer's phone number.
      properties:
        number:
          type: string
          description: Número de teléfono sin el prefijo.
          x-description-i18n:
            eng: Phone number without the prefix.
        prefix:
          type: string
          pattern: '^\+?\d{1,3}$'
          description: Prefijo de teléfono.
          x-description-i18n:
            eng: Phone prefix.
      required:
        - number
      type: object
    DocumentIdentificationIssuer:
      type: string
      description: Proveedor del documento de identificación.
      x-description-i18n:
        eng: Issuer of the identification document of the customer.
      enum:
        - STATE_GOVERNMENT
        - FEDERAL_GOVERNMENT
        - MONEY_TRANSMITTER
        - PROFESSIONAL_ASSOCIATION
    DocumentIdentificationType:
      type: string
      description: Tipo de documento de identificación del usuario.
      x-description-i18n:
        eng: Type of customer identification document.
      enum:
        - ALIEN_REGISTRATION_CARD
        - ELECTOR_CREDENTIAL
        - FISCAL_IDENTIFICATION_CODE
        - ORIGIN_COUNTRY_IDENTIFICATION_CODE
        - FOREIGN_IDENTIFICATION_DOCUMENT
        - NATIONAL_IDENTITY_DOCUMENT
        - OTHER_PHYSICAL_PERSON_DOCUMENTS
        - DRIVER_LICENSE
        - CONSULAR_REGISTRATION
        - UNDER_AGE
        - RESIDENCE_CARD
        - TAX_IDENTIFICATION_NUMBER
        - NON_DRIVER_LICENSE_PHOTO_ID
        - VALID_PASSPORT
        - DIPLOMAT_IDENTITY_CARD
        - US_GOVERNMENT_ISSUER_ID
        - UNIQUE_ID_ISSUED_BY_MT
    DynamicDescriptor:
      type: string
      description: Descriptor dinámico enviado al banco.
      x-description-i18n:
        eng: Dynamic descriptor sent to the bank.
    IntervalType:
      description: Unidad de tiempo que determina la unidad de tiempo que dura el periodo de prueba de la subscripción. Requerido si se indica el campo `interval_offset`.
      x-description-i18n:
        eng: Unit of time that determines the unit of time that the trial period of the subscription lasts. Required if the `interval_offset` field is specified.
      enum:
        - DAILY
        - WEEKLY
        - MONTHLY
        - YEARLY
      type: string
    Ivr_payment:
      properties:
        phone:
          type: string
          description: Teléfono del usuario.
        amount:
          type: number
          description: Cantidad en céntimos a cobrar.
        service_uuid:
          type: string
          description: Identificador del servicio de paybycall del cliente.
        signature:
          type: string
          description: Firma del cliente.
        language:
          type: string
          description: Idioma de la locución. Por defecto sale en español.
        reference:
          type: string
          description: Referencia de la operación del cliente. Sólo se muestra en Paylands.
        customer_ext_id:
          type: string
          description: Identificador del usuario en el sistema del cliente. Sólo se muestra en Paylands.
        description:
          type: string
          description: Descripción de la operación. Este texto lo dice el sistema en la locución.
      required:
        - signature
        - amount
        - service_uuid
        - phone
      type: object
    MoToCampaign:
      properties:
        clientID:
          type: number
          description: Identificador del cliente.
          x-description-i18n:
            eng: Unique internal identifier of the client.
        clientUUID:
          $ref: '#/components/schemas/Client/properties/uuid'
        createdAt:
          $ref: '#/components/schemas/Order/properties/created'
        description:
          type: string
          description: Nombre interno identificativo de la campaña.
          x-description-i18n:
            eng: An internal description of the campaign.
        entry:
          $ref: '#/components/schemas/MoToEntry'
        error:
          type: string
          description: 'Muestra si se ha producido algún error. Si no se ha producido ninguno, será `null`.'
          x-description-i18n:
            eng: 'Displays if there has been any error. If there was none, its value is `null`.'
          nullable: true
        expiresAt:
          $ref: '#/components/schemas/MotoOrders/properties/expiresAt'
        filename:
          type: string
          description: Nombre del fichero .csv.
          nullable: true
          x-description-i18n:
            eng: Name of the .csv file.
        id:
          type: number
          description: ID interno de la entidad.
          x-description-i18n:
            eng: Internal ID of the entity.
        serviceUUID:
          $ref: '#/components/schemas/ServiceUUID'
        status:
          $ref: '#/components/schemas/MoToCampaignStatus'
        subject:
          type: string
          description: 'Asunto de la campaña, que será enviado si se indica email como método de envío.'
          nullable: true
          x-description-i18n:
            eng: This value will be sent as subject if the `type` is "EMAIL".
        type:
          $ref: '#/components/schemas/MoToType'
        uuid:
          $ref: '#/components/schemas/MoToPayment/properties/uuid'
      required:
        - id
        - uuid
        - description
        - serviceUUID
        - clientID
        - clientUUID
        - type
        - status
        - entry
        - createdAt
        - expiresAt
        - subject
        - filename
      type: object
    MotoOrders:
      description: Detalles de cada una de las ordenes MoTo.
      x-description-i18n:
        eng: The details of the MoTo orders.
      properties:
        orderUUID:
          $ref: '#/components/schemas/Order/properties/uuid'
        destination:
          type: string
          description: 'Destino de la orden MoTo, esta puede ser un email o un número de teléfono.'
          x-description-i18n:
            eng: Destination of MoTo order it can be an email or phone number.
        moToPaymentStatus:
          $ref: '#/components/schemas/MoToPaymentStatus'
        expiresAt:
          type: string
          description: 'Fecha a partir de la cual caducan los pagos de la campaña. Los pagos caducan a las 00:00:00 del día especificado.'
          x-description-i18n:
            eng: 'Date after which the payments expire and can no longer be attempted. Payments expire at 00:00:00 on the provided date.'
        createdAt:
          $ref: '#/components/schemas/Order/properties/created'
        amount:
          $ref: '#/components/schemas/Plan/properties/amount'
        isPaid:
          $ref: '#/components/schemas/Order/properties/paid'
        isSafe:
          type: boolean
          description: Identifica si la operación es segura (`true`) o no (`false`).
          x-description-i18n:
            eng: Indicates whether or not the order is safe (`true`) or it is not (`false`).
        orderType:
          $ref: '#/components/schemas/MoToType'
      required:
        - orderUUID
        - destination
        - moToPaymentStatus
        - expiresAt
        - createdAt
        - amount
        - isPaid
        - isSafe
        - orderType
    MoToCampaignStatus:
      description: Estado de la campaña MoTo.
      x-description-i18n:
        eng: Status of the MoTo campaign.
      enum:
        - PENDING
        - PROCESSING
        - COMPLETED
        - ERROR
      type: string
    MoToEntry:
      description: Método mediante el cual se creó la campaña.
      x-description-i18n:
        eng: Method used to create the campaign.
      enum:
        - FORM
        - BACKEND
        - WEBSERVICE
      type: string
    MoToPaymentStatus:
      description: El estado del pago MoTo.
      x-description-i18n:
        eng: The status of the MoTo payment.
      enum:
        - PENDING
        - COMPLETED
        - ERROR_CREATING
        - ERROR_SENDING
      type: string
    MoToPayment:
      description: Pagos asociados a la campaña.
      x-description-i18n:
        eng: Payments associated to the MoTo campaign.
      properties:
        uuid:
          type: string
          description: Identificador único de la entidad.
          x-description-i18n:
            eng: Unique identifier of the entity.
        line:
          type: number
          description: Número de linea del pago en el fichero .csv.
          x-description-i18n:
            eng: Number of the MoTo payment line on the .csv file.
        status:
          $ref: '#/components/schemas/MoToPaymentStatus'
        amount:
          $ref: '#/components/schemas/Plan/properties/amount'
        operative:
          description: Operativa de la orden que se usará en el pago.
          x-description-i18n:
            eng: Operative to be used during the payment.
          enum:
            - AUTHORIZATION
            - PARTIAL_AUTHORIZATION
            - DEFERRED
            - PAYOUT
            - TRANSFER
          type: string
        secure:
          $ref: '#/components/schemas/Order/properties/safe'
        destination:
          type: string
          description: 'Destino del enlace de pago. Puede ser un email o un número de teléfono. Si el tipo de la campaña es `CUSTOM_DELIVERY`, puede tener cualquier valor.'
          x-description-i18n:
            eng: 'Destination of the payment link. It may be an email or a telephone number. If the campaign type is `CUSTOM_DELIVERY`, it may have any value.'
        createdAt:
          $ref: '#/components/schemas/Order/properties/created'
        certified:
          type: string
          description: Indica si el envío del enlace del pago está certificado o no.
          x-description-i18n:
            eng: Displays whether or not the delivery of the payment link is certified.
        sourceUUID:
          $ref: '#/components/schemas/TapToPay/properties/uuid'
          nullable: true
        externalID:
          $ref: '#/components/schemas/Customer/properties/external_id'
          nullable: true
        additional:
          $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/additional'
          nullable: true
        urlPost:
          $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/url_post'
          nullable: true
        urlOk:
          $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/url_ok'
          nullable: true
        urlKo:
          $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/url_ko'
          nullable: true
        cardTemplate:
          $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/dcc_template'
          nullable: true
        dccTemplate:
          nullable: true
          type: string
          description: Plantilla del DCC que se le mostrará al cliente. Si el valor es `null` se utilizara la plantilla por defecto.
          x-description-i18n:
            eng: 'DCC template shown to the customer during the payment process. If the value is `null`, the default DCC template will be used instead.'
        moToTemplate:
          nullable: true
          type: string
          description: Plantilla que se le mostrará al cliente al recibir la notificación del pago por email o sms. Si el valor es `null` se utilizara la plantilla por defecto.
          x-description-i18n:
            eng: 'Template shown to the customer on the payment notification when `type` is "EMAIL" or "SMS". If the value is `null`, the default template will be used instead.'
        language:
          $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/language'
          nullable: true
        extra_data:
          nullable: true
          type: string
          description: El campo `extra_data` en forma de string.
          x-description-i18n:
            eng: 'The `extra_data` field, formatted as string.'
      required:
        - id
        - uuid
        - detailUUID
        - line
        - status
        - amount
        - operative
        - secure
        - destination
        - createdAt
      type: object
    MoToType:
      description: Método de envío de los pagos MoTo.
      x-description-i18n:
        eng: Delivery method of the MoTo payments.
      enum:
        - PHONE
        - MAIL
        - CUSTOM_DELIVERY
      type: string
    PaymentOrder:
      properties:
        additional:
          type: string
          description: 'Campo de texto libre, que será devuelto en la respuesta de la operación.'
        amount:
          type: number
          description: Cantidad en céntimos a cobrar.
        customer_ext_id:
          type: string
        description:
          type: string
          description: Breve descripción del pago a realizar.
        extra_data:
          $ref: '#/components/schemas/ExtraData'
        operative:
          type: string
          enum:
            - AUTHORIZATION
            - DEFERRED
            - PAYOUT
            - TRANSFER
          description: Tipo de operación para la que se genera la orden
        secure:
          type: boolean
          description: Este campo indica si se trata de un pago seguro o no seguro.
        service:
          type: string
          description: Código del servicio que se utilizará para el pago. Puede consultarse en el panel.
        signature:
          type: string
        template_uuid:
          type: string
          description: 'Si se tienen diferentes personalizaciones de la carta de pago, este campo es el UUID de la que se quiera utilizar.'
        url_ko:
          type: string
          description: Url donde se redirigirá al usuario si no finaliza el pago (si hubiera interacción con este) correctamente.
        url_ok:
          type: string
          description: Url donde se redirigirá al usuario cuando finalice el pago (si hubiera interacción con este) correctamente.
        url_post:
          type: string
          description: Url donde se notificará cada evento relacionado con la orden.
      required:
        - signature
        - amount
        - operative
        - service
        - secure
      type: object
    Order:
      properties:
        uuid:
          type: string
          description: Identificador único de la orden.
          example: 455C87FF-8DAC-478F-A83C-47CB4581BC2A
          x-description-i18n:
            eng: Unique identifier of the order.
        created:
          type: string
          description: Fecha de creación de la entidad.
          x-description-i18n:
            eng: Creation date of the entity.
        created_from_client_timezone:
          type: string
          description: 'Fecha de creación de la entidad, usando la zona horaria del comercio.'
          x-description-i18n:
            eng: 'Creation date of the entity, using the timezone of the merchant.'
        amount:
          $ref: '#/components/schemas/Plan/properties/amount'
        currency:
          type: string
          example: '978'
          description: Código numérico ISO 4217 de la moneda.
          x-description-i18n:
            eng: ISO 4217 numeric code of the currency.
        paid:
          type: boolean
          description: Identifica si el importe de la operación ya se ha liquidado (`true`) o está pendiente de liquidar (`false`).
          x-description-i18n:
            eng: Indicates whether or not the amount has already been settled (`true`) or is pending settlement (`false`).
        status:
          $ref: '#/components/schemas/OrderStatuses'
        safe:
          type: boolean
          description: '`true` si el pago requerirá 3D Secure. `false` en caso contrario.'
          x-description-i18n:
            eng: '`true` if the payment will require 3D Secure. Otherwise `false`.'
        refunded:
          type: number
          minimum: 0
          description: 'Importe ya devuelto, en la moneda fraccionaria elegida. Una cantidad de 100 utilizando la moneda Euro es igual a 1€.'
          x-description-i18n:
            eng: 'Amount already refunded, in the fractional currency of your choice. An amount of 100 using the currency EUR is equal to 1€.'
        additional:
          $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/additional'
          nullable: true
        service:
          type: string
          description: 'Nombre del servicio de pago asignado a la orden (REDSYSPSD2, CREDORAX...)'
          x-description-i18n:
            eng: Name of the payment service assigned to the order.
        service_uuid:
          type: string
          description: El UUID del servicio de pago empleado para llevar a cabo la operación.
          x-description-i18n:
            eng: The UUID of the payment service used to perform the operation.
        customer:
          $ref: '#/components/schemas/Customer/properties/external_id'
          nullable: true
        cof_txnid:
          nullable: true
          type: string
          description: Identificador obtenido tras realizar un pago 3D Secure.
          x-description-i18n:
            eng: Identifier obtained after performing a 3D Secure payment.
        transactions:
          type: array
          items:
            $ref: '#/components/schemas/Transaction'
        token:
          nullable: true
          type: string
          description: Token utilizado para mostrar la carta de pago. Caduca al cabo de 10 minutos por defecto.
          x-description-i18n:
            eng: Token used to redirect the user to the payment card. Expires after 10 minutes by default.
        ip:
          $ref: '#/paths/~1payment~1direct/post/requestBody/content/application~1json/schema/properties/customer_ip'
          nullable: true
        reference:
          nullable: true
          type: string
          description: Referencia de la orden. Puede ser utilizado como identificador externo o para evitar pagos duplicados.
          x-description-i18n:
            eng: The reference of the order. May be used as an external identifier or to avoid duplicate payments.
        dynamic_descriptor:
          nullable: true
          type: string
          description: Descriptor dinámico del cargo en la cuenta bancaria del cliente. Puede no concordar exactamente con este valor.
          x-description-i18n:
            eng: Dynamic descriptor of the payment on the customer's bank account. May not match this exact value.
        threeds_data:
          nullable: true
          type: object
          properties:
            version:
              enum:
                - '1.0'
                - '2.1'
                - '2.2'
              type: string
            flow:
              enum:
                - FRICTIONLESS
                - FINGERPRINTING_ONLY
                - CHALLENGE_ONLY
                - FULL
                - V1_FALLBACK
                - V1
                - EXTERNAL
              type: string
            sca_requested:
              type: boolean
              description: Indica si la autenticación reforzada (SCA) tuvo lugar durante el proceso de pago.
              x-description-i18n:
                eng: Indicates whether or not strong customer authentication (SCA) took place during the payment process.
            status:
              $ref: '#/paths/~1charge/post/requestBody/content/application~1json/schema/properties/threeds_data/properties/trans_status'
              nullable: true
            eci:
              $ref: '#/paths/~1charge/post/requestBody/content/application~1json/schema/properties/threeds_data/properties/eci'
              nullable: true
            exemption:
              nullable: true
              enum:
                - LV
                - TRA
                - MIT
                - SCP
                - TB
              type: string
          required:
            - version
            - flow
            - sca_requested
          description: Parámetros empleados durante el proceso de autenticación de 3D Secure.
          x-description-i18n:
            eng: 3D Secure parameters used during the authentication process.
        urls:
          description: 'La orden generada puede contener las urls de pago para la carta de pago, bizum y pago tokenizado. Este campo solo aparecerá si está habilitado en las preferencias del cliente.'
          x-description-i18n:
            eng: 'The generated order can contain the payment urls for the payment card, bizum and tokenized payment. This field will only appear if it is enabled in the client preferences.'
          properties:
            payment_card:
              type: string
              description: Url para redirigir a la carta de pago.
              x-description-i18n:
                eng: Url to redirect to the payment card.
            bizum:
              type: string
              description: 'Url para redirigir al pago por Bizum, solamente si el servicio de pago soporta este método.'
              x-description-i18n:
                eng: 'Url to redirect to payment by Bizum, only if the payment service supports bizum.'
            3ds_tokenized:
              type: string
              description: 'Url para redirigir al pago tokenizado, solamente si se indican los parámetros para el pago tokenizado por 3DS.'
              x-description-i18n:
                eng: 'Url to redirect to the tokenized payment, only if the parameters for the tokenized payment by 3DS are provided.'
          type: object
        dcc:
          description: 'Objeto que sólo se mostrará en pagos que hayan usado DCC, con información acerca del mismo.'
          x-description-i18n:
            eng: 'Object that will only be shown in payments that have used DCC, with information about it.'
          properties:
            fee:
              type: string
              description: Comisión aplicada sobre el valor del BCE.
              x-description-i18n:
                eng: Commission applied on the value of the ECB.
              nullable: false
            change:
              type: number
              description: Cambio aplicado entre la moneda del comercio y la de la tarjeta.
              x-description-i18n:
                eng: Change applied between the currency of the merchant and the currency of the card.
              nullable: true
            mode:
              $ref: '#/components/schemas/Service/properties/dcc_mode'
            selection:
              description: tipo de DCC aplicado. Esto dependerá de la configuración que tenga el comercio.
              x-description-i18n:
                eng: DCC mode that has been applied. This will depend on the merchant's configuration.
              enum:
                - CARD
                - COMMERCE
                - NONE
              type: string
            card_currency:
              type: string
              example: EUR
              description: Moneda de la tarjeta en formato ISO 4217.
              x-description-i18n:
                eng: Card currency using ISO 4217 format.
            merchant_currency:
              type: string
              example: EUR
              description: Moneda del comercio en formato ISO 4217.
              x-description-i18n:
                eng: Merchant currency using ISO 4217 format
            ecb_change:
              type: number
              description: Tipo de cambio indicado por el BCE.
              x-description-i18n:
                eng: exchange rate applied by ECB.
              nullable: true
          required:
            - fee
            - mode
            - selection
            - card_currency
            - merchant_currency
          type: object
      required:
        - uuid
        - created
        - created_from_client_timezone
        - amount
        - currency
        - paid
        - status
        - safe
        - refunded
        - service
        - service_uuid
        - transactions
      type: object
    OrderStatuses:
      enum:
        - CREATED
        - EXPIRED
        - BLACKLISTED
        - FRAUD
        - PENDING_CARD
        - PENDING_PROCESSOR_RESPONSE
        - PENDING_3DS_RESPONSE
        - REFUSED
        - SUCCESS
        - PENDING_CONFIRMATION
        - CANCELLED
        - REFUNDED
        - PARTIALLY_REFUNDED
        - PARTIALLY_CONFIRMED
        - USER_CANCELLED
        - REDIRECTED_TO_3DS
        - AUTHENTICATION_REQUIRED
        - PENDING_PAYMENT
        - THREEDS_EXPIRED
      description: Estado actual de la orden.
      x-description-i18n:
        eng: The order's current status.
      type: string
    Profile:
      description: Configuración del perfil del cliente.
      x-description-i18n:
        eng: The customer's profile.
      properties:
        first_name:
          $ref: '#/components/schemas/Paypal/properties/first_name'
        last_name:
          $ref: '#/components/schemas/Paypal/properties/last_name'
        cardholder_name:
          $ref: '#/components/schemas/Card/properties/holder'
          nullable: true
        document_identification_issuer_type:
          $ref: '#/components/schemas/DocumentIdentificationIssuer'
          nullable: true
        document_identification_type:
          $ref: '#/components/schemas/DocumentIdentificationType'
          nullable: true
        document_identification_number:
          nullable: true
          type: string
          description: Número de identificación.
          x-description-i18n:
            eng: Identification number.
        email:
          $ref: '#/components/schemas/Paypal/properties/email'
          nullable: true
        phone:
          $ref: '#/components/schemas/Phone'
        work_phone:
          $ref: '#/components/schemas/Phone'
        home_phone:
          $ref: '#/components/schemas/Phone'
        mobile_phone:
          $ref: '#/components/schemas/Phone'
        birthdate:
          nullable: true
          type: string
          description: Fecha de nacimiento del usuario en formato YYYY-MM-DD.
          x-description-i18n:
            eng: Birth date of the customer in YYYY-MM-DD format.
        source_of_funds:
          nullable: true
          type: string
          description: Origen de los ingresos del usuario.
          x-description-i18n:
            eng: Source of funds of the customer.
        occupation:
          nullable: true
          type: string
          description: Puesto de trabajo del usuario.
          x-description-i18n:
            eng: Occupation of the customer.
        social_security_number:
          nullable: true
          type: string
          description: Número de seguridad social del usuario.
          x-description-i18n:
            eng: Social security number of the customer.
      required:
        - first_name
        - last_name
      type: object
    CreatePlan:
      properties:
        amount:
          type: number
          description: Cantidad en céntimos que se cobrará cada vez que se cobre la subscripción.
          x-description-i18n:
            eng: Amount in cents that will be charged each time the subscription is charged.
        external_id:
          type: string
          description: ID externo único con el que referenciar el plan más adelante.
          x-description-i18n:
            eng: Unique external ID with which to reference the plan later.
        interval:
          type: number
          description: Intervalo en la unidad indicada en el campo `interval_type` que determina cada cuánto tiempo debe cobrarse la subscripción.
          x-description-i18n:
            eng: Interval in the unit indicated in the `interval_type` field that determines how often the subscription should be charged.
        interval_offset:
          type: number
          description: Intervalo en la unidad indicada en el campo interval_offset_type que determina la unidad de tiempo que dura el periodo de prueba de la subscripción.
          x-description-i18n:
            eng: Interval in the unit indicated in the interval_offset_type field that determines the unit of time that the trial period of the subscription lasts.
        interval_offset_type:
          type: string
          enum:
            - DAILY
            - WEEKLY
            - MONTHLY
            - YEARLY
          description: Unidad de tiempo que determina la unidad de tiempo que dura el periodo de prueba de la subscripción. Requerido si se indica el campo interval_offset.
          x-description-i18n:
            eng: Unit of time that determines the unit of time that the trial period of the subscription lasts. Required if the interval_offset field is specified.
        interval_type:
          type: string
          enum:
            - DAILY
            - WEEKLY
            - MONTHLY
            - YEARLY
          description: Unidad de tiempo que determina cada cuánto debe cobrarse la subscripción.
          x-description-i18n:
            eng: Unit of time that determines how often the subscription should be charged.
        name:
          type: string
          description: Nombre del plan.
          x-description-i18n:
            eng: Plan name
        product:
          type: string
          description: ID externo del producto al cual asociar el plan.
          x-description-i18n:
            eng: External ID of the product to associate the plan with.
        signature:
          type: string
        trial_available:
          type: boolean
          description: 'Por defecto, false. Indica si hay periodo de prueba. Hasta que éste no termine no se realizará el primer cobro.'
          x-description-i18n:
            eng: 'By default, false. Indicates if there is a trial period. Until it ends, the first charge will not be made.'
      required:
        - signature
        - name
        - external_id
        - product
        - amount
        - interval
        - interval_type
      type: object
    Plan:
      description: 'El plan establece muchas variables que pueden utilizarse para personalizar el intervalo, importe y tiempo de prueba de una subscripción.'
      x-description-i18n:
        eng: 'The plan establishes many variables that may be used to customize the subscription interval, rate, and trial periods.'
      properties:
        amount:
          type: number
          minimum: 0
          description: 'Cantidad a cobrar, en la moneda fraccionaria elegida. Una cantidad de 100 utilizando la moneda Euro es igual a 1€.'
          x-description-i18n:
            eng: 'Amount to charge, in the fractional currency of your choice. An amount of 100 using the currency EUR is equal to 1€.'
        created_at:
          $ref: '#/components/schemas/Order/properties/created'
        external_id:
          type: string
          description: ID externo otorgado por el comercio para identificar de forma única a un plan.
          x-description-i18n:
            eng: External ID provided by the merchant to uniquely identify a plan.
        interval:
          type: number
          description: Intervalo en la unidad indicada en el campo `interval_type` que determina cada cuánto tiempo debe cobrarse la subscripción.
          x-description-i18n:
            eng: Interval in the unit specified in the field `interval_type` that determines how often the subscription should be charged.
        interval_offset:
          type: number
          description: Intervalo en la unidad indicada en el campo `interval_offset_type` que determina la unidad de tiempo que dura el periodo de prueba de la subscripción.
          x-description-i18n:
            eng: Interval in the unit specified in the field `interval_offset_type` that determines the unit of time used on the trial period of the subscription.
        interval_offset_type:
          $ref: '#/components/schemas/IntervalType'
        interval_type:
          $ref: '#/components/schemas/IntervalType'
        name:
          type: string
          description: Nombre del plan.
          x-description-i18n:
            eng: The plan name.
        product:
          $ref: '#/components/schemas/Product'
        trial_available:
          type: boolean
          description: 'Por defecto, false. Indica si hay periodo de prueba. Hasta que éste no termine no se realizará el primer cobro.'
          x-description-i18n:
            eng: 'By default, `false`. Whether or not there is a trial period. The customer will not be charged until this trial ends.'
        updated_at:
          type: string
          description: Fecha de última actualización de la entidad.
          x-description-i18n:
            eng: Last update date of the entity.
      required:
        - name
        - external_id
        - product
        - amount
        - interval
        - interval_type
        - created_at
        - updated_at
      type: object
    Product:
      description: El producto de la subscripción. A esta entidad se asocian planes.
      x-description-i18n:
        eng: The subscription product. Plans are associated to this entity.
      properties:
        created_at:
          $ref: '#/components/schemas/Order/properties/created'
        external_id:
          type: string
          description: ID externo otorgado por el comercio para identificar de forma única a un producto.
          x-description-i18n:
            eng: External ID provided by the merchant to uniquely identify a product.
        name:
          type: string
          description: Nombre del producto.
          x-description-i18n:
            eng: Product name.
        notification_url:
          type: string
          description: URL que recibirá una notificación HTTP cuando el pago cambie de estado.
          x-description-i18n:
            eng: URL that will receive an HTTP notification when payment changes status.
        sandbox:
          type: boolean
          description: Indica sí el producto pertenece al entorno de sandbox.
          x-description-i18n:
            eng: Whether or not the product belongs to the sandbox environment.
        updated_at:
          $ref: '#/components/schemas/Plan/properties/updated_at'
      required:
        - name
        - external_id
        - sandbox
        - created_at
        - updated_at
      type: object
    ReferentialIntegrity:
      description: Modo de la integridad referencial activo.
      x-description-i18n:
        eng: Active referential integrity mode.
      enum:
        - ANY
        - SUCCESS
      type: string
    Service:
      description: Servicio de pago asociado a un proveedor que encapsula uno o más métodos de pago.
      x-description-i18n:
        eng: Payment service associated with a provider that encapsulates one or more payment methods.
      properties:
        uuid:
          $ref: '#/components/schemas/ServiceUUID'
        name:
          type: string
          description: Nombre del servicio.
          x-description-i18n:
            eng: Name of the service.
        type:
          type: string
          description: Tipo de servicio.
          x-description-i18n:
            eng: Service type.
          enum:
            - EVOSNAP
            - MIT
            - CREDIBANCOECOMMERCE
            - REDSYSPSD2
            - CLEARHAUS
            - TRUSTPAYMENTS
            - CREDORAX
            - DLOCAL
            - CECABANK
            - NIUBIZ
            - CYBERSOURCE
            - VIACASH
            - SAFETYPAY
            - NUVEI
            - FACILITAPAY
            - COFIDIS
            - PAYLANDS
            - WORLDPAY
            - DECTA
            - DEVENGO
            - INESPAY
            - WALLETTO
            - PAYPAL
            - PAYMENTSWAY
            - FLOA
            - BKN301
            - SILVERFLOW
            - CHECKOUT
            - EUPAGO
            - PAGSMILE
            - SIBS
            - PAYSHOP
            - PAYNOPAIN
        created:
          $ref: '#/components/schemas/CreatedAt'
        enabled:
          type: boolean
          description: Indica si está activo para procesar pagos o no.
          x-description-i18n:
            eng: Indicates whether it is active to process payments or not.
        terminal:
          type: string
          description: UUID del terminal asociado.
          x-description-i18n:
            eng: UUID of the associated terminal.
        dcc_allowed:
          type: boolean
          description: Indica si el DCC está activo al nivel de servicio de pago.
          x-description-i18n:
            eng: Indicates whether the DCC is active at the paid service level.
        dcc_mode:
          description: DCC configurado en el comercio.
          x-description-i18n:
            eng: DCC that was configured on the merchant account.
          enum:
            - LOCAL
            - FOREIGN
            - DYNAMIC
          type: string
        dynamic_descriptor:
          $ref: '#/components/schemas/DynamicDescriptor'
        referential_integrity:
          $ref: '#/components/schemas/ReferentialIntegrity'
      required:
        - uuid
        - name
        - enabled
        - created
        - dcc_allowed
        - dcc_mode
      type: object
    ServiceUUID:
      type: string
      description: UUID del servicio.
      x-description-i18n:
        eng: UUID of the service.
    Signature:
      type: string
    Card:
      properties:
        object:
          $ref: '#/components/schemas/APM/properties/object'
        uuid:
          type: string
          description: Identificador de la tarjeta.
          x-description-i18n:
            eng: Unique identifier of the card.
        type:
          $ref: '#/components/schemas/SourceTypeOnPayment'
        token:
          type: string
          description: Token que identifica de forma única el PAN de una tarjeta. Dos tarjetas con el mismo PAN tienen el mismo token.
          x-description-i18n:
            eng: Token used to uniquely identify the PAN of a card. Two cards with the same PAN have the same token.
        brand:
          enum:
            - VISA
            - DISCOVER
            - AMERICAN_EXPRESS
            - MASTERCARD
            - DINERS_CLUB_INTERNATIONAL
            - JCB
            - UNIONPAY
            - INTERPAY
            - MAESTRO
            - OTHER
          type: string
        additional:
          $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/additional'
          nullable: true
        bank:
          type: string
          description: Banco emisor de la tarjeta. Vacío si es desconocido.
          x-description-i18n:
            eng: Issuing bank of the card. Empty if unknown.
        bin:
          type: number
          description: Los 6 primeros dígitos del número de la tarjeta que componen el BIN.
          x-description-i18n:
            eng: The 6 first numbers of a card which belong to the BIN.
        country:
          type: string
          example: ES
          description: Código alfanumérico de dos letras ISO 3166 del país.
          x-description-i18n:
            eng: ISO 3166 two-letter alphanumeric code of the country.
        expire_month:
          type: string
          example: '10'
          description: Mes de expiración de la tarjeta.
          x-description-i18n:
            eng: Expiry month of the card.
        expire_year:
          type: string
          example: '24'
          description: Año de expiración de la tarjeta.
          x-description-i18n:
            eng: Expiry year of the card.
        holder:
          type: string
          description: Titular de la tarjeta.
          x-description-i18n:
            eng: Cardholder name.
        is_saved:
          type: boolean
          default: true
          description: 'Indica si el usuario ha dado consentimiento para que su tarjeta sea usada en pagos futuros. La tarjeta puede usarse para procesar pagos con independencia de este valor, es el comercio quien debe tener en cuenta este campo.'
          x-description-i18n:
            eng: Whether or not the user has given consent for their card to be stored for future payments. The card may be used regardless of the value of this field. It is the merchant who must take into account the value of this field.
        last4:
          type: string
          description: Últimos 4 dígitos de la tarjeta.
          x-description-i18n:
            eng: Last 4 digits of the card.
        prepaid:
          type: string
          description: Indica si la tarjeta es prepago. Vacío si se desconoce esta información.
          x-description-i18n:
            eng: Whether or not the card is prepaid. Empty if unknown.
        validation_date:
          $ref: '#/components/schemas/Paypal/properties/validation_date'
          nullable: true
        creation_date:
          $ref: '#/components/schemas/Order/properties/created'
        brand_description:
          $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/source/properties/brand_description'
          nullable: true
        origin:
          type: string
          description: Identifica cómo se obtuvo la tarjeta.
          default: UNKNOWN
          x-description-i18n:
            eng: Identifies how the card was obtained.
          enum:
            - UNKNOWN
            - PAYMENT_CARD
            - API
            - SDK
            - ONE_STEP
            - MOTO
            - KEYENTRY
            - MIGRATION
            - PROXY_PCI
            - GOOGLE_PAY
            - MC_C2P
            - VISA_C2P
            - APPLE_PAY
      required:
        - object
        - uuid
        - type
        - token
        - brand
        - country
        - holder
        - bin
        - last4
        - expire_month
        - expire_year
        - bank
        - is_saved
        - creation_date
        - origin
      type: object
    DynamicCard:
      properties:
        object:
          $ref: '#/components/schemas/APM/properties/object'
        uuid:
          $ref: '#/components/schemas/Card/properties/uuid'
        created_at:
          $ref: '#/components/schemas/Order/properties/created'
        holder:
          $ref: '#/components/schemas/Card/properties/holder'
        dpan:
          type: string
          description: El DPAN de una tarjeta reemplaza el PAN. Los seis primeros dígitos y los cuatro últimos no se corresponden con los del PAN.
          x-description-i18n:
            eng: The DPAN of a card replaces the PAN. The first six and last four digits do not correspond to the PAN.
        last4:
          type: string
          description: Últimos 4 dígitos del PAN. Estos sí se corresponden con los 4 últimos dígitos del PAN.
          x-description-i18n:
            eng: Last 4 digits of the card. These do correspond with the last 4 digits of the PAN.
        brand:
          $ref: '#/components/schemas/Card/properties/brand'
        bank:
          $ref: '#/components/schemas/Card/properties/bank'
        country:
          $ref: '#/components/schemas/Card/properties/country'
        type:
          $ref: '#/components/schemas/SourceTypeOnPayment'
        brand_description:
          $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/source/properties/brand_description'
          nullable: true
        prepaid:
          $ref: '#/components/schemas/Card/properties/prepaid'
        origin:
          $ref: '#/components/schemas/Card/properties/origin'
        additional:
          $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/additional'
          nullable: true
      required:
        - object
        - uuid
        - created_at
        - holder
        - dpan
        - last4
        - brand
        - bank
        - country
        - type
      type: object
    Bank:
      properties:
        object:
          $ref: '#/components/schemas/APM/properties/object'
        uuid:
          $ref: '#/components/schemas/Card/properties/uuid'
        account_holder:
          type: string
          description: Titular de la cuenta bancaria.
          x-description-i18n:
            eng: Account holder name.
        iban:
          type: string
          description: IBAN de la cuenta bancaria.
          x-description-i18n:
            eng: IBAN of the bank account.
        created_at:
          $ref: '#/components/schemas/Order/properties/created'
        additional:
          $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/additional'
          nullable: true
      required:
        - object
        - uuid
        - account_holder
        - iban
        - created_at
      type: object
    APM:
      properties:
        object:
          type: string
          description: El tipo del medio de pago.
          default: CARD
          x-description-i18n:
            eng: The kind of payment method.
          enum:
            - CARD
            - TRANSFER
            - HALCASH
            - BIZUM
            - BANK
            - DYNAMIC_CARD
            - CRYPTO
            - PIX
            - VIACASH
            - COFIDIS
            - IDEAL
            - SOFORT
            - KLARNA
            - GIROPAY
            - INESPAY
            - PAYPAL
            - FLOA
            - PSE
            - PAYLATER
            - SPEI
            - TRUELAYER
            - MULTIBANCO
            - MBWAY
            - PAYSAFECARD
            - PAYRETAILERS
            - PAGO_FACIL
            - EFECTY
            - BOLETO
            - LOTERICA
            - PAYSHOP
      required:
        - object
      type: object
    Paypal:
      properties:
        object:
          $ref: '#/components/schemas/APM/properties/object'
        uuid:
          $ref: '#/components/schemas/Card/properties/uuid'
        payer_id:
          type: string
          description: 'Identificador único del pagador (PayerID) proporcionado por el proveedor externo, como PayPal.'
          x-description-i18n:
            eng: 'Unique identifier of the payer (PayerID) provided by the external provider, such as PayPal.'
          example: ABCDEFG123456
        first_name:
          type: string
          description: Nombre del usuario.
          x-description-i18n:
            eng: First name of the customer.
        last_name:
          type: string
          description: Apellidos del usuario.
          x-description-i18n:
            eng: Last name of the customer.
        email:
          type: string
          description: Correo electrónico del usuario.
          x-description-i18n:
            eng: Email of the customer.
        country_alpha2:
          $ref: '#/components/schemas/Card/properties/country'
        additional:
          $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/additional'
          nullable: true
        creation_date:
          $ref: '#/components/schemas/Order/properties/created'
        validation_date:
          type: string
          description: 'Fecha de validación de la tarjeta. Si no se validó al guardarla o no ha sido usada en al menos una `AUTHORIZATION`, este valor será `null`.'
          x-description-i18n:
            eng: 'Validation date of the card. If it has not been validated or used in at least one successful `AUTHORIZATION`, this value will be null.'
      required:
        - object
        - uuid
        - payer_id
        - first_name
        - last_name
        - email
        - country_alpha2
        - additional
      type: object
    TapToPay:
      properties:
        object:
          $ref: '#/components/schemas/APM/properties/object'
        uuid:
          type: string
          description: Identificador único del medio de pago empleado para realizar el pago.
          x-description-i18n:
            eng: Unique identifier of the payment method used to perform the payment.
        masked_pan:
          type: string
          example: 411111******1111
          description: 'Número de la tarjeta censurado, mostrando solo el BIN y los 4 últimos dígitos.'
          x-description-i18n:
            eng: 'Censored card number, displaying only the BIN and last 4 digits.'
        additional:
          $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/additional'
          nullable: true
        validation_date:
          $ref: '#/components/schemas/Paypal/properties/validation_date'
        creation_date:
          $ref: '#/components/schemas/Order/properties/created'
      required:
        - object
        - uuid
        - masked_pan
        - creation_date
      type: object
    Ecopaynet:
      properties:
        object:
          $ref: '#/components/schemas/APM/properties/object'
        uuid:
          $ref: '#/components/schemas/TapToPay/properties/uuid'
        bin:
          $ref: '#/components/schemas/Card/properties/bin'
        last_4:
          $ref: '#/components/schemas/Card/properties/last4'
        additional:
          $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/additional'
          nullable: true
        validation_date:
          $ref: '#/components/schemas/Paypal/properties/validation_date'
        creation_date:
          $ref: '#/components/schemas/Order/properties/created'
      required:
        - object
        - uuid
        - bin
        - last_4
        - creation_date
      type: object
    SourceTypeOnPayment:
      description: Tipo de tarjeta (Crédito/Débito o desconocido).
      x-description-i18n:
        eng: Type of card (Credit/Debit or unknown)
      enum:
        - CREDIT
        - DEBIT
        - ''
      type: string
    SourceTypeOnTokenization:
      description: Tipo de tarjeta (Crédito/Débito o desconocido).
      x-description-i18n:
        eng: Type of card (Credit/Debit or unknown)
      enum:
        - C
        - D
        - ''
      type: string
    SourceUUID:
      type: string
    Subscription:
      properties:
        id:
          type: string
          description: El ID único de la subscripción.
          x-description-i18n:
            eng: The unique ID of the subscription.
        active:
          type: boolean
          description: Indica si la subscripción está activa o no.
          x-description-i18n:
            eng: Whether or not the subscription is still active.
        status:
          $ref: '#/components/schemas/SubscriptionStatus'
        total_payment_number:
          type: number
          description: Número total de pagos que se realizarán a lo largo de la suscripción.
          x-description-i18n:
            eng: Total number of payments that will be charged during the subscription period.
        total_payment_charged:
          type: number
          description: Número total de pagos que se han hecho hasta la fecha.
          x-description-i18n:
            eng: Total number of payments charged to date.
        payment_attempts_limit:
          $ref: '#/components/schemas/Subscription/properties/total_payment_number'
        first_charge_date:
          type: string
          description: La fecha en la que se realizará o realizó el primer cobro.
          x-description-i18n:
            eng: The date in which the first subscription payment will or was performed.
        next_charge_date:
          type: string
          description: La fecha en la que se realizará el próximo cobro.
          x-description-i18n:
            eng: The date in which the next subscription payment will be performed.
        additional_data:
          type: object
          description: Datos adicionales para procesar el pago.
          x-description-i18n:
            eng: Additional data required to perform the payment.
          properties:
            customer_ext_id:
              $ref: '#/components/schemas/Customer/properties/external_id'
            operative:
              $ref: '#/components/schemas/MoToPayment/properties/operative'
            source_uuid:
              $ref: '#/components/schemas/TapToPay/properties/uuid'
            service:
              $ref: '#/components/schemas/Order/properties/service_uuid'
            url_post:
              $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/url_post'
              nullable: true
            additional:
              $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/additional'
              nullable: true
          required:
            - customer_ext_id
            - operative
            - source_uuid
            - service
        created_at:
          $ref: '#/components/schemas/Order/properties/created'
        updated_at:
          $ref: '#/components/schemas/Plan/properties/updated_at'
        plan:
          $ref: '#/components/schemas/Plan'
        payments:
          type: array
          items:
            $ref: '#/components/schemas/SubscriptionPayment'
      required:
        - id
        - active
        - status
        - plan
        - total_payment_number
        - total_payment_charged
        - payment_attempts_limit
        - first_charge_date
        - next_charge_date
        - additional_data
        - created_at
        - updated_at
      type: object
    SubscriptionPayment:
      type: object
      description: Listado de pagos de la subscripción.
      x-description-i18n:
        eng: List of payments of this subscription.
      properties:
        amount:
          $ref: '#/components/schemas/Plan/properties/amount'
        attempt:
          type: string
          description: El número de intentos desde el último intento de pago de subscripción exitoso.
          x-description-i18n:
            eng: The number of attempts since the last successful subscription payment.
        created_at:
          $ref: '#/components/schemas/Order/properties/created'
        id:
          type: string
          description: El ID único del pago de la subscripción.
          x-description-i18n:
            eng: The unique ID of the subscription payment.
        payment_date:
          type: string
          description: Fecha en la que se procesará o procesó el pago.
          x-description-i18n:
            eng: Date in which the payment will be or has been processed.
        payment_details:
          type: string
          description: Cadena de texto en formato JSON con información adicional del pago en Paylands.
          nullable: true
          x-description-i18n:
            eng: String in JSON format containing additional payment data from Paylands.
        payment_number:
          type: string
          description: El número del pago de la subscripción.
          x-description-i18n:
            eng: The number of the payment of the subscription.
        status:
          $ref: '#/components/schemas/SubscriptionPaymentStatus'
        updated_at:
          $ref: '#/components/schemas/Plan/properties/updated_at'
      required:
        - id
        - status
        - payment_date
        - payment_number
        - attempt
        - amount
        - created_at
        - updated_at
    SubscriptionPaymentStatus:
      type: string
      description: Status del pago de la subscripción.
      x-description-i18n:
        eng: Status of the subscription payment.
      enum:
        - OK
        - KO
    SubscriptionStatus:
      type: string
      description: El estado actual de la subscripción.
      x-description-i18n:
        eng: The current status of the subscription.
      enum:
        - CREATED
        - ISSUED
        - DENIED
        - FAILED_NOTIFICATION
        - PAID
    Transaction:
      properties:
        uuid:
          type: string
          description: El identificador único de la transacción.
          x-description-i18n:
            eng: The unique identifier of the transaction.
        created:
          $ref: '#/components/schemas/Order/properties/created'
        created_from_client_timezone:
          $ref: '#/components/schemas/Order/properties/created_from_client_timezone'
        operative:
          $ref: '#/components/schemas/TransactionOperative'
        amount:
          $ref: '#/components/schemas/Plan/properties/amount'
        authorization:
          $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/authorization'
          nullable: true
        processor_id:
          $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/processor_id'
          nullable: true
        status:
          $ref: '#/components/schemas/TransactionStatus'
        error:
          type: string
          default: NONE
          description: 'Error de la transacción. Si no hay error, su valor es `"NONE"`.'
          x-description-i18n:
            eng: 'The transaction error. If there is no error, its value is `"NONE"`.'
        source:
          oneOf:
            - $ref: '#/components/schemas/Card'
            - $ref: '#/components/schemas/DynamicCard'
            - $ref: '#/components/schemas/Bank'
            - $ref: '#/components/schemas/APM'
            - $ref: '#/components/schemas/Paypal'
            - $ref: '#/components/schemas/TapToPay'
            - $ref: '#/components/schemas/Ecopaynet'
          discriminator:
            propertyName: object
          nullable: true
          type: object
        antifraud:
          $ref: '#/components/schemas/Antifraud'
          nullable: true
        device:
          nullable: true
          properties:
            fingerprint:
              type: string
              example: '344138326'
              description: Huella digital del dispositivo empleado para realizar el pago.
              x-description-i18n:
                eng: The fingerprint of the device used to perform the payment.
            user_agent:
              type: string
              example: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:95.0) Gecko/20100101 Firefox/95.0'
              description: La cabecera User-Agent del navegador empleado para realizar el pago.
              x-description-i18n:
                eng: The User-Agent header of the browser used to perform the payment.
          required:
            - fingerprint
            - user_agent
          type: object
        error_details:
          nullable: true
          description: Objeto con información sobre el motivo de rechazo de la operación.
          x-description-i18n:
            eng: Error showing reasons for payment failure.
          properties:
            error_code:
              type: string
              description: Código de error devuelto por el emisor.
              x-description-i18n:
                eng: Error code returned by the issuer.
              nullable: true
            error_description:
              type: string
              description: Texto descriptivo asociado al error_code.
              x-description-i18n:
                eng: Descriptive text associated to the error_code.
              nullable: true
            error_code_scheme:
              type: string
              description: Código de error devuelto por las marcas.
              x-description-i18n:
                eng: 'Error code returned by the schemes(VISA, MC, ...).'
              nullable: true
            error_description_scheme:
              type: string
              description: Texto descriptivo asociado al error_code_scheme.
              x-description-i18n:
                eng: Descriptive text associated to the error_code_scheme.
              nullable: true
            error_unified:
              type: string
              description: 'Cadena de texto asociada al campo error_code_scheme. En caso de tener multiadquirencia, este campo contendrá el mismo valor para un mismo motivo de rechazo entre los diferentes adquirentes.'
              x-description-i18n:
                eng: 'Text string associated to the error_code_scheme field. In case of multi-acquirers, this field will contain the same value for the same reason for rejection among the different acquirers.'
              nullable: true
          type: object
        bizum:
          nullable: true
          description: Objeto con información del pago Bizum.
          x-description-i18n:
            eng: Object with Bizum payment information.
          properties:
            account:
              type: string
              example: ES86XXXXXXXXXXXXXXXX3452
              description: Cuenta bancaria del usuario enmascarada.
              x-description-i18n:
                eng: User's masked bank account number.
              nullable: true
            phone_number:
              type: string
              example: 346XXXXX354
              description: Número de teléfono enmascarado que el usuario ha utilizado para realizar la transacción.
              x-description-i18n:
                eng: Masked phone number used in the transaction.
              nullable: true
          type: object
        metadata:
          nullable: true
          type: object
          description: Contiene los pares clave-valor de datos asociados por el comercio.
          x-description-i18n:
            eng: Contains the key-value pairs of data associated by the merchant.
      required:
        - uuid
        - created
        - created_from_client_timezone
        - operative
        - amount
        - status
        - error
      type: object
      description: Lista de transacciones asociadas a la orden.
      x-description-i18n:
        eng: List of transactions associated to the order.
    TransactionOperative:
      description: Operativa de la transacción.
      x-description-i18n:
        eng: Operative of the transaction.
      enum:
        - AUTHORIZATION
        - DEFERRED
        - REFUND
        - CONFIRMATION
        - CANCELLATION
        - PAYOUT
        - TRANSFER
      type: string
    TransactionSourceCard:
      description: Información de la tarjeta con la que se ha realizado la operación. Puede ser nulo cuando el usuario no haya llegado a introducir sus datos de tarjeta en la carta de pago.
      x-description-i18n:
        eng: Information of the credit/debit card used to perform the payment. May be null if the user never entered their card details in the payment card.
      properties:
        Customer:
          $ref: '#/components/schemas/Customer'
        Source:
          properties:
            object:
              $ref: '#/components/schemas/APM/properties/object'
            uuid:
              $ref: '#/components/schemas/Card/properties/uuid'
            type:
              $ref: '#/components/schemas/SourceTypeOnTokenization'
            token:
              $ref: '#/components/schemas/Card/properties/token'
            brand:
              $ref: '#/components/schemas/Card/properties/brand'
            additional:
              $ref: '#/paths/~1payment~1moto~1json/post/requestBody/content/application~1json/schema/properties/payments/items/properties/additional'
              nullable: true
            bank:
              $ref: '#/components/schemas/Card/properties/bank'
            bin:
              $ref: '#/components/schemas/Card/properties/bin'
            country:
              $ref: '#/components/schemas/Card/properties/country'
            expire_month:
              $ref: '#/components/schemas/Card/properties/expire_month'
            expire_year:
              $ref: '#/components/schemas/Card/properties/expire_year'
            holder:
              $ref: '#/components/schemas/Card/properties/holder'
            is_saved:
              $ref: '#/components/schemas/Card/properties/is_saved'
            last4:
              $ref: '#/components/schemas/Card/properties/last4'
            prepaid:
              $ref: '#/components/schemas/Card/properties/prepaid'
            validation_date:
              $ref: '#/components/schemas/Paypal/properties/validation_date'
              nullable: true
            creation_date:
              $ref: '#/components/schemas/Order/properties/created'
            brand_description:
              $ref: '#/paths/~1card-present~1charge/post/responses/200/content/application~1json/schema/allOf/1/properties/order/properties/transactions/items/properties/source/properties/brand_description'
              nullable: true
            cof:
              nullable: false
              type: object
              properties:
                is_available:
                  type: boolean
                  description: Este campo indica si la tarjeta tiene un COF válido.
                  nullable: false
                  x-description-i18n:
                    eng: This field will show whether the card has a valid COF or not.
          required:
            - object
            - uuid
            - type
            - token
            - brand
            - country
            - holder
            - bin
            - last4
            - expire_month
            - expire_year
            - bank
            - is_saved
            - creation_date
          type: object
      type: object
    TransactionStatus:
      description: Estado de la transacción.
      x-description-i18n:
        eng: The status of the transaction.
      enum:
        - CREATED
        - SUCCESS
        - REFUSED
        - ERROR
        - PENDING
        - CANCELLED
      type: string
    Address:
      description: Dirección de cliente
      x-description-i18n:
        eng: Client address
      properties:
        address1:
          type: string
          description: Línea 1 de Dirección (max. 50 carácteres).
          x-description-i18n:
            eng: Line 1 of the address (max. 50 characters).
        address2:
          nullable: true
          type: string
          description: Línea 2 de Dirección (max. 50 carácteres).
          x-description-i18n:
            eng: Line 2 of the address (max. 50 characters).
        address3:
          nullable: true
          type: string
          description: Línea 3 de Dirección (max. 50 carácteres).
          x-description-i18n:
            eng: Line 3 of the address (max. 50 characters).
        city:
          type: string
          description: Ciudad.
          x-description-i18n:
            eng: City.
        country:
          type: string
          example: ESP
          description: Código alfanumérico de tres letras ISO 3166 del país.
          x-description-i18n:
            eng: ISO 3166 three-letter alphanumeric code of the country.
        default:
          type: boolean
          description: 'Configurar como dirección por defecto. Si el usuario tiene una dirección por defecto, se utilizará ésta siempre que no se indique una diferente.'
          x-description-i18n:
            eng: 'Set as the default address. If the customer has a default address, it will be used unless a different one is provided.'
        state_code:
          type: string
          description: Estado o provincia.
          x-description-i18n:
            eng: State or province.
        type:
          $ref: '#/components/schemas/AddressType'
        zip_code:
          type: string
          description: Código postal.
          x-description-i18n:
            eng: Zip code.
      required:
        - address1
        - city
        - state_code
        - country
        - zip_code
        - default
        - type
      type: object
    MarketplaceObject:
      description: Datos de liquidación de los distintos comercios asociados al marketplace. La suma del campo net_amount para todos ellos deberá coindicir con el campo `amount`.
      x-description-i18n:
        eng: Settlement data of the different merchants associated with the marketplace. The sum of the net_amount field for all of them must match the `amount` field.
      properties:
        merchant_location_id:
          type: number
          description: ID del merchant.
          x-description-i18n:
            eng: Merchant ID
        amount:
          type: number
          description: Importe bruto que va destinado a ese merchant.
          x-description-i18n:
            eng: Gross amount that goes to that merchant
        net_amount:
          type: number
          description: Cantidad sin la comisión que va destinada a ese merchant.
          x-description-i18n:
            eng: Amount without the commission that goes to that merchant.
        description:
          type: string
          description: Descripción opcional.
          x-description-i18n:
            eng: Optional description.
      required:
        - merchant_location_id
        - amount
        - net_amount
      type: object
    CredentialOnFile:
      description: Configuración del Credential On File
      x-description-i18n:
        eng: Credential on file configuration
      properties:
        reason:
          $ref: '#/components/schemas/CredentialOnFileReason'
        txnid:
          type: string
          description: 'Identificador del COF obtenido tras una CIT. Si no se proporciona, se enviará un txnid existente de la tarjeta (si hay).'
          x-description-i18n:
            eng: 'COF identifier obtained after a CIT. If not provided, an existing txnid of the card (if any) will be sent.'
      required:
        - reason
      type: object
    CredentialOnFileReason:
      description: Motivo para el cual se utilizará el Credential On File más adelante.
      x-description-i18n:
        eng: Reason for which the Credential On File will be used later.
      enum:
        - INSTALLMENTS
        - RECURRING
        - NO_SHOW
        - DELAYED
        - OTHER
      type: string
    ExtraData:
      properties:
        profile:
          $ref: '#/components/schemas/Profile'
        address:
          $ref: '#/components/schemas/Address'
        billing_address:
          $ref: '#/components/schemas/Address'
        shipping_address:
          $ref: '#/components/schemas/Address'
        cof:
          $ref: '#/components/schemas/CredentialOnFile'
        payment:
          $ref: '#/components/schemas/PaymentObject'
        halcash:
          $ref: '#/components/schemas/HalCashExtraDataObject'
        marketplace:
          $ref: '#/components/schemas/MarketplaceObject'
        checkout:
          nullable: true
          description: Metódo de pago.
          x-description-i18n:
            eng: Payment method
          properties:
            uuid:
              type: string
              description: UUID del checkout.
              x-description-i18n:
                eng: Checkout UUID
            payment_methods:
              nullable: true
              type: array
              description: 'Aunque en la configuración del checkout se indican los servicios de pago que se mostrarán, si se envía este campo se mostrarán los que se especifiquen aquí, por lo que este campo tiene preferencia frente a la configuración que se haya establecido en el panel.'
              x-description-i18n:
                eng: 'Although the checkout configuration indicates the payment services to be displayed, if this field is submitted, the ones specified here will be displayed, so this field takes precedence over the configuration set in the panel.'
              enum:
                - - PAYMENT_CARD
                  - BIZUM
                  - SOFORT
                  - IDEAL
                  - CRYPTO
                  - PIX
                  - VIACASH
                  - KLARNA
                  - GIROPAY
                  - GOOGLE_PAY
                  - APPLE_PAY
                  - CLICKTOPAY
            customization:
              type: object
              properties:
                title:
                  nullable: true
                  type: string
                  description: Titulo del checkout.
                  x-description-i18n:
                    eng: Checkout title.
                logo:
                  nullable: true
                  type: string
                  description: 'Logo del checkout, tiene que ser una URL.'
                  x-description-i18n:
                    eng: 'Checkout logo, needs to be a URL.'
                theme_type:
                  nullable: true
                  type: string
                  description: Tema del checkout.
                  x-description-i18n:
                    eng: Checkout theme.
                accent_color:
                  nullable: true
                  type: string
                  description: 'Color complementario del checkout, en formato hexadecimal.'
                  x-description-i18n:
                    eng: 'Checkout accent colour, in hexadecimal format.'
                background_color:
                  nullable: true
                  type: string
                  description: 'Color de fondo del checkout, en formato hexadecimal.'
                  x-description-i18n:
                    eng: 'Checkout background colour, in hexadecimal format.'
                text_color:
                  nullable: true
                  type: string
                  description: 'Color del texto del checkout, en formato hexadecimal.'
                  x-description-i18n:
                    eng: 'Checkout text colour, in hexadecimal format.'
                font:
                  nullable: true
                  type: string
                  description: Fuente de texto del checkout.
                  x-description-i18n:
                    eng: Checkout text font.
                description:
                  nullable: true
                  type: string
                  description: Resumen del checkout.
                  x-description-i18n:
                    eng: Checkout summary.
                payment_details:
                  nullable: true
                  type: object
                  description: Objeto que contiene varias entradas llave - valor.
                  x-description-i18n:
                    eng: Object containing several key-value entries.
                is_enabled_cancel_button:
                  type: boolean
                  default: true
                  description: Indica si se quiere mostrar el botón para cancelar el pago.
                  x-description-i18n:
                    eng: Indicates if the button to cancel the payment should be displayed.
              description: Customización del checkout.
              x-description-i18n:
                eng: Checkout customization.
            default_payment_method:
              type: string
              description: Método de pago por defecto.
              x-description-i18n:
                eng: Default payment method.
          required:
            - uuid
          type: object
        aft:
          $ref: '#/components/schemas/AFT'
        source_holder_verification:
          $ref: '#/components/schemas/SourceHolderVerification'
      type: object
    HalCashExtraDataObject:
      description: Información adicional sobre HalCash
      x-description-i18n:
        eng: Additional information about HalCash
      properties:
        expiry_date:
          type: string
          description: Fecha de caducidad
          x-description-i18n:
            eng: Expiration date
        secret_key:
          type: string
          description: Clave secreta
          x-description-i18n:
            eng: Secret key
        sender_name:
          type: string
          description: Nombre de quien envía el dinero
          x-description-i18n:
            eng: Name of the person sending the money
      required:
        - sender_name
        - secret_key
        - expiry_date
      type: object
    PaymentObject:
      description: Configuración avanzada del pago
      x-description-i18n:
        eng: Advanced payment configuration
      properties:
        installments:
          type: number
          description: Número de cuotas
          x-description-i18n:
            eng: Number of installments
      required:
        - installments
      type: object
    ResponseOK:
      properties:
        message:
          type: string
          description: Nombre del código HTTP de respuesta.
          x-description-i18n:
            eng: Name of the HTTP response code.
        code:
          type: number
          description: Código de respuesta.
          x-description-i18n:
            eng: Response code.
        current_time:
          type: string
          description: Fecha y hora de la petición.
          x-description-i18n:
            eng: Date and time of the request.
      type: object
      required:
        - message
        - code
        - current_time
    ResponseKO:
      properties:
        message:
          type: string
          description: Nombre del error HTTP.
          x-description-i18n:
            eng: Name of the HTTP error.
        code:
          type: number
          description: Código de respuesta.
          x-description-i18n:
            eng: Response code.
        details:
          type: string
          description: Detalles del error.
          x-description-i18n:
            eng: Response error details.
      type: object
      required:
        - message
        - code
    AFT:
      description: Configuración del envío de fondos (AFT)
      x-description-i18n:
        eng: Account Funding Transaction (AFT) configuration
      type: object
      properties:
        type:
          type: string
          description: Tipo de AFT
          x-description-i18n:
            eng: AFT type
          enum:
            - NONE
            - ACCOUNT_TO_ACCOUNT
            - PERSON_TO_PERSON
        receiver:
          type: object
          description: Datos del receptor (solo en AFT tipo PERSON_TO_PERSON)
          x-description-i18n:
            eng: Receiver information (only for PERSON_TO_PERSON AFT)
          properties:
            first_name:
              $ref: '#/components/schemas/Paypal/properties/first_name'
            last_name:
              $ref: '#/components/schemas/Paypal/properties/last_name'
            country:
              $ref: '#/components/schemas/Address/properties/country'
            account_number:
              type: string
              description: 'Número de cuenta, tarjeta o teléfono del receptor'
              x-description-i18n:
                eng: 'Receiver''s account number, card or phone'
            account_type:
              type: string
              description: 'Tipo de cuenta del receptor. (CARD_NUMBER, por defecto)'
              x-description-i18n:
                eng: 'Receiver''s account type (CARD_NUMBER, by default)'
              enum:
                - CARD_NUMBER
                - ACCOUNT_NUMBER
                - MOBILE_PHONE_NUMBER
          required:
            - first_name
            - last_name
            - country
            - account_number
      required:
        - type
    SourceHolderVerification:
      description: Configuración de verificación del titular del medio de pago (Source Holder Verification - SHV) aplicada durante flujos de almacenamiento o pago.
      x-description-i18n:
        eng: Configuration for payment method holder verification (Source Holder Verification - SHV) applied during storage or payment flows.
      type: object
      properties:
        enabled:
          type: boolean
          description: 'Activa la verificación del titular del medio de pago. Cuando se establece en `true`, la plataforma intenta realizar la comprobación SHV antes de continuar con el flujo.'
          x-description-i18n:
            eng: 'Enables payment method holder verification. When set to `true`, the platform attempts to perform SHV before continuing the flow.'
        verification_method:
          type: string
          enum:
            - NAME
            - IDENTIFICATION_NUMBER
          description: 'Método utilizado para verificar la titularidad del medio de pago. Si no se especifica, se utiliza NAME.'
          x-description-i18n:
            eng: 'Method used to verify the ownership of the payment source. If not specified, NAME is used.'
          default: NAME
        accepted_verification_results:
          type: array
          description: 'Lista de resultados de verificación considerados aceptables para continuar con la operación. Si se omite o está vacía, el flujo continúa independientemente del resultado SHV.'
          x-description-i18n:
            eng: 'List of verification results considered acceptable to continue the operation. If omitted or empty, the flow continues regardless of the SHV result.'
          items:
            type: string
            enum:
              - MATCH
              - PARTIAL_MATCH
              - NO_MATCH
        allow_unavailable:
          type: boolean
          description: 'Permite continuar con el flujo si la verificación no ha sido realizada porque no está soportada por el banco o tipo/marca de tarjeta, o porque el banco no la ha ejecutado.'
          x-description-i18n:
            eng: 'Allows the flow to continue if the verification was not performed because it is not supported by the bank or card type/brand, or because the bank did not execute it.'
          default: true
        allow_error:
          type: boolean
          description: 'Determina el comportamiento cuando la verificación no puede completarse debido a errores o fallos transitorios (por ejemplo, timeout o indisponibilidad temporal). Si es `true`, estos errores no bloquean el flujo; si es `false`, la operación se bloquea.'
          x-description-i18n:
            eng: 'Determines the behavior when verification cannot be completed due to transient errors (for example, timeouts or temporary unavailability). If `true`, these errors do not block the flow; if `false`, the operation is blocked.'
          default: false
        first_name:
          type: string
          description: 'Nombre del titular utilizado para la comparación. Si no se envía, en flujos de pago se obtiene de `extra_data.profile` y, durante la creación de la tarjeta/cuenta bancaria, de `card_holder` o `account_holder`.'
          x-description-i18n:
            eng: 'Holder first name used for matching. If not provided, in payment flows it is obtained from `extra_data.profile` and in source storage flows from `card_holder` or `account_holder`.'
        last_name:
          type: string
          description: Apellidos del titular utilizados para la comparación.
          x-description-i18n:
            eng: Holder last name used for matching.
        identification_number:
          type: string
          description: 'Identificador legal del titular del medio de pago (por ejemplo, NIF, DNI, pasaporte o número de registro de empresa).'
          x-description-i18n:
            eng: 'Legal identifier of the payment source holder (e.g. tax ID, national ID, passport or company registration number).'
      required:
        - enabled
      additionalProperties: false
