servers:
    - url: 'https://rest.paycomet.com'
      description: REST interface at PAYCOMET platform
components:
    schemas: {}
paths:
    /v1/errors:
        post:
            summary: Gets an error description
            tags:
                - error
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorDescription:
                                        type: string
                                        example: 'Invalid amount'
                                    errorCode:
                                        type: integer
                                        example: 0

                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                                    description: Product or terminal Id.
                                errorCode:
                                    type: integer
                                    description: Error code given by PAYCOMET.
                                    example: 1129
                                lang:
                                    type: string
                                    description: ISO2 code of language.
                                    default: 'es'
                                    example: 'en'
                            required:
                                - terminal
                                - errorCode
                        examples:
                            example-1: {}
                description: ''
            description: info_error
            security:
                - paycometApiKey: []
            operationId: infoError
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  description: PAYCOMET API key (Query privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/cards:
        post:
            summary: Tokenizes a card. Either card number and CVC2 or jetToken are required. For you to send directly the card data you should be PCI certified or the accepting the requirement to submit quarterly SAQ-AEP and get ASV scans. For most users is strongly recommended getting the jetToken with JETIFRAME or using GET integration to register the cards instead of REST.
            tags:
                - cards
            responses:
                '200':
                    description: Created
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    idUser:
                                        type: integer
                                        example: 12345678
                                    tokenUser:
                                        type: string
                                        example: "WHlSWmVDdzVQeUZ"
                                    errorCode:
                                        type: integer
                                        example: 0

                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                                    description: Product or terminal Id.
                                cvc2:
                                    type: string
                                    description: cvc2. Mandatory if no JetToken provided
                                    example: "012"
                                jetToken:
                                    type: string
                                    description: Temporary token provided from PAYCOMET. Mandatory if no card provided.
                                    example: "rApGWqLdH8ExOyNiLukyMMs78PZRzDm5"
                                expiryYear:
                                    type: string
                                    description: "Expiry year.\n Mandatory if no JetToken provided"
                                    example: "23"
                                expiryMonth:
                                    type: string
                                    description: "Expiry month. \nMandatory if no JetToken provided."
                                    example: "11"
                                pan:
                                    type: string
                                    description: Card number. Mandatory if no JetToken provided
                                    example: 491801916000002
                                order:
                                    type: string
                                    example: "PAY987654321"
                                    description: "Reference, will be included in callback."
                                productDescription:
                                    type: string
                                    example: "Random product"
                                    description: "Concept, will be included in callback."
                                language:
                                    type: string
                                    description: "Language for callback translation."
                                    example: "fr"
                                    default: "es"
                                notify:
                                    type: integer
                                    description: "Configure POST notification of the card tokenization result (possible values: 1 - force notify, 2 - not notify). Default product value will be used if notify is not informed"
                                    example: 1
                                cardHolderName:
                                    type: string
                                    description: Card holder name
                                    example: "Michael Scott"
                                secureAuthentication:
                                    type: object
                                    description: Node with user secure authentication details of a previous transaction to avoid future ACS.
                                    properties:
                                        CAVV:
                                            type: string
                                            description: "CAVV value included in a 1.0.2 version ACS card emisor"
                                            example: "AAMCCDIFUQSAMPLEAl4A5da8DRYw="
                                        TXID:
                                            type: string
                                            description: "XID value included in a 1.0.2 version ACS card emisor"
                                            example: "4a9ertc3-c05b-4fc9-43ff-40s4mp1ea213e"
                                        ECI:
                                            type: string
                                            description: "ECI value included in a transaction info of the ACS card emisor"
                                            example: "05"
                                        threeDSServerTransID:
                                            type: string
                                            description: "Transation unique identifier included in a transaction info of the ACS card emisor"
                                            example: "A999000999"
                                        authenticacionValue:
                                            type: string
                                            description: "Authenticacion value included in a transaction info of the ACS card emisor"
                                            example: "e9aef4ef-467c-9173-a73a-2d1s71ffak3e"
                                        dsTransID:
                                            type: string
                                            description: "Unique transaction identifier assigned by the DS"
                                            example: "591724c2-d995-c05b-b49f-e194es8mp13a"
                                        threeDSVersion:
                                            type: string
                                            description: "Version of the transaction of the ACS card emisor"
                                            example: "2.2.0"
                                        authenticationFlow:
                                            type: string
                                            description: "Authentication field to indicate the flow (C: challenge or F: frictionless) given in the transaction"
                                            example: "F"
                            required:
                                - terminal
                description: ''
            description: This method supposes the registration of the card in PAYCOMET, it is not valid for subsequent charges with the exception of MIT. To register the card against the processor for subsequent recurring charges, it is necessary to charge for a secure environment, regardless of the amount.
            security:
                - paycometApiKey: []
            operationId: addUser
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  description: PAYCOMET API key (Token actions privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/cards/info:
        post:
            summary: Get card info
            tags:
                - cards
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    pan:
                                        type: string
                                        description: 'Card number, without any spaces or dashes. Only the last four digits will be returned. The rest will be masked with X'
                                        example: "491001-XX-XXXX-0002"
                                    cardBrand:
                                        type: string
                                        description: 'Card brand. If it can be identified, information on the card brand will be sent (Visa, MasterCard, American Express, etc). Otherwise, the field will be returned blank.'
                                        example: "VISA"
                                    cardType:
                                        type: string
                                        description: 'Type of card. If it can be identified, information on the type of card will be sent (DEBIT, CREDIT, etc). Otherwise, the field will be returned blank.'
                                        example: "DEBIT"
                                    cardICountryISO3:
                                        type: string
                                        description: 'ISO3 Code the country of the issuer of the card. If it can be identified, the ISO3 Code of the country of the issuer of the card will be sent. Otherwise, the field will be returned blank.'
                                        example: "ESP"
                                    expiryDate:
                                        type: string
                                        description: Expiry date of the card expressed in the format YYYY/MM
                                        example: "2024/03"
                                    cardHash:
                                        type: string
                                        description: Hash unique credit card id.
                                        example: "7eaf867ccae61f944aa3123ef088d96e2330fcf61f3780a9505e4fff12b1014"
                                    cardCategory:
                                        type: string
                                        description: Card category.
                                        example: "CONSUMER"
                                    sepaCard:
                                        type: integer
                                        description: Card in SEPA country.
                                        example: 1
                                    psd2Card:
                                        type: string
                                        description: Express if card has PSD2 information (Y is a PSD2 Card, N is not and NA is not available).
                                        example: NA
                                    tokenCOF:
                                        type: integer
                                        description: Express if card has COF registered.
                                        example: 1
                                    eeaCard:
                                        type: string
                                        description: Express if card country belongs to EEA zone or not. (Y/N or NA if not available).
                                        example: "NA"
                                    errorCode:
                                        type: integer
                                        example: 0

                '403':
                    description: Not Allowed
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 1004

                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                idUser:
                                    type: integer
                                    example: 12345678
                                    description: Identification of user card given by PAYCOMET. Mandatory if is a card payment.
                                tokenUser:
                                    type: string
                                    example: "WHlSWmVDdzVQeUZ"
                                    description: Identification of user card given by PAYCOMET. Mandatory if is a card payment.
                                terminal:
                                    type: integer
                                    description: Product or terminal Id.
                            required:
                                - idUser
                                - tokenUser
                                - terminal
            description: Info about an user card.
            operationId: infoUser
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  description: PAYCOMET API key (Query privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/cards/delete:
        post:
            summary: Removes a card
            tags:
                - cards
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                        description: Error Id. 0 means no error.
                '403':
                    description: Not Allowed
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 1004

                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                                    description: Product or terminal Id.
                                idUser:
                                    type: integer
                                    example: 12345678
                                    description: Identification of user card given by PAYCOMET. Mandatory if is a card payment.
                                tokenUser:
                                    type: string
                                    example: "WHlSWmVDdzVQeUZ"
                                    description: Identification of user card given by PAYCOMET. Mandatory if is a card payment.

                            required:
                                - terminal
                                - idUser
                                - tokenUser
            description: Deletes the user.
            operationId: removeUser
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  description: PAYCOMET API key (Token actions privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/cards/edit:
        post:
            summary: Changes the expiry date, cvc2 or both
            tags:
                - cards
            responses:
                '200':
                    description: Edited
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    idUser:
                                        type: integer
                                        example: 12345678
                                    tokenUser:
                                        type: string
                                        example: "WHlSWmVDdzVQeUZ"
                                    errorCode:
                                        type: integer
                                        example: 0

                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                                    description: Product or terminal Id.
                                idUser:
                                    type: integer
                                    example: 12345678
                                    description: Identification of user card given by PAYCOMET. Mandatory if is a card payment.
                                tokenUser:
                                    type: string
                                    example: "WHlSWmVDdzVQeUZ"
                                    description: Identification of user card given by PAYCOMET. Mandatory if is a card payment.
                                cvc2:
                                    type: string
                                    description: cvc2. Mandatory if no JetToken provided
                                    example: "012"
                                expiryYear:
                                    type: string
                                    description: "Expiry year.  \nMandatory if no JetToken provided."
                                    example: "25"
                                expiryMonth:
                                    type: string
                                    description: "Expiry month. \nMandatory if no JetToken provided."
                                    example: "11"

                            required:
                                - terminal
                                - idUser
                                - tokenUser
                                - expiryMonth
                                - expiryYear
                description: ''
            description: edit_user
            security:
                - paycometApiKey: []
            operationId: editUser
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  description: PAYCOMET API key (Token actions privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/cards/physical:
        post:
            summary: Tokenize a card by physical encrypted data
            tags:
                - cards
            responses:
                '200':
                    description: Added
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    idUser:
                                        type: integer
                                        example: 12345678
                                    tokenUser:
                                        type: string
                                        example: "WHlSWmVDdzVQeUZ"
                                    expiryYear:
                                        type: string
                                        example: "25"
                                    expiryMonth:
                                        type: string
                                        example: "11"
                                    errorCode:
                                        type: integer
                                        example: 0

                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                                    description: Product or terminal Id.
                                providerId:
                                    type: integer
                                    example: 12345
                                    description: Provider identifier for physical operations given by PAYCOMET
                                merchantId:
                                    type: string
                                    example: "123456"
                                    description: Merchant identifier code for physical operations given by PAYCOMET
                                terminalId:
                                    type: string
                                    example: "999888777"
                                    description: Terminal identifier
                                deviceKsn:
                                    type: string
                                    description: Card KSN info
                                    example: "D1809182775K9SN00007"
                                deviceDukpt:
                                    type: string
                                    description: Card DUKPT info
                                    example: "P6C10M6E0T277E2274D9281FBAFE1234A2C34388D7C000T7"
                                cofIdentifier:
                                    type: string
                                    description: Processor COF identifier
                                    example: "2012P4YC0M350"
                                originalIp:
                                    type: string
                                    description: IP Address of the customer
                                    example: "127.0.0.1"
                            required:
                                - terminal
                                - providerId
                                - merchantId
                                - terminalId
                                - deviceKsn
                                - deviceDukpt
                                - originalIp
                description: ''
            description: cards_physical
            security:
                - paycometApiKey: []
            operationId: physicalAddCard
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  description: PAYCOMET API key (Token actions privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/cards/physical/edit:
        post:
            summary: Edit a card entered by physical encrypted data
            tags:
                - cards
            responses:
                '200':
                    description: Added
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    idUser:
                                        type: integer
                                        example: 12345678
                                    tokenUser:
                                        type: string
                                        example: "WHlSWmVDdzVQeUZ"
                                    cofIdentifier:
                                        type: string
                                        example: "2012P4YC0M350"
                                    errorCode:
                                        type: integer
                                        example: 0

                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                                    description: Product or terminal Id.
                                providerId:
                                    type: integer
                                    example: 12345
                                    description: Provider identifier for physical operations given by PAYCOMET
                                merchantId:
                                    type: string
                                    example: "123456"
                                    description: Merchant identifier code for physical operations given by PAYCOMET
                                terminalId:
                                    type: string
                                    example: "999888777"
                                    description: Terminal identifier
                                idUser:
                                    type: integer
                                    example: 12345678
                                    description: Identification of user card given by PAYCOMET. Mandatory if is a card payment.
                                tokenUser:
                                    type: string
                                    example: "WHlSWmVDdzVQeUZ"
                                    description: Identification of user card given by PAYCOMET. Mandatory if is a card payment.
                                cofIdentifier:
                                    type: string
                                    description: Processor COF identifier
                                    example: "2012P4YC0M350"
                            required:
                                - terminal
                                - providerId
                                - merchantId
                                - terminalId
                                - idUser
                                - tokenUser
                description: ''
            description: cards_physical_edit
            security:
                - paycometApiKey: []
            operationId: physicalEditCard
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  description: PAYCOMET API key (Token actions privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/balance:
        post:
            summary: Get balance info
            tags:
                - balance
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    global:
                                        type: string
                                        description: 'Total balance in the account'
                                        example: "123"
                                    available:
                                        type: string
                                        description: 'Available balance in the account'
                                        example: "120"
                                    deposit:
                                        type: string
                                        description: 'Balance withheld in account'
                                        example: "3"
                                    errorCode:
                                        type: integer
                                        example: 0
                '403':
                    description: Not Allowed
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 1004

                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                                    description: Product or terminal Id.
                            required:
                                - terminal
            description: Gets the balance of a product. Restricted.
            operationId: productBalance
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  description: PAYCOMET API key (Query privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/exchange:
        post:
            summary: Converts a certain amount from a currency to another.
            tags:
                - exchange
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    amount:
                                        type: string
                                        description: 'Amount in requested currency'
                                        example: "23.45"
                                    errorCode:
                                        type: integer
                                        example: 0

                '403':
                    description: Not Allowed
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 1004
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                                    description: Product or terminal Id.
                                amount:
                                    type: string
                                    description: 'Amount to convert'
                                    example: "12.34"
                                originalCurrency:
                                    type: string
                                    description: 'Currency to convert from'
                                    example: "USD"
                                finalCurrency:
                                    type: string
                                    description: 'Currency to convert to'
                                    example: "EUR"
                            required:
                                - terminal
                                - amount
                                - originalCurrency
                                - finalCurrency
            description: Gets the exchange of an amount.
            operationId: exchange
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  description: PAYCOMET API key (Query privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/heartbeat:
        post:
            summary: Check the system
            tags:
                - heartbeat
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                        description: Error code.
                                    time:
                                        type: string
                                        example: "0.076s"
                                        description: PING time to PAYCOMET services
                                    processorTime:
                                        type: string
                                        example: "0.276s"
                                        description: PING time to payment processor
                                    processorStatus:
                                        type: string
                                        example: "true"
                                        description: General processor status (false if unreachable)
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                            required:
                                - terminal
            description: Get heartbeat of API
            operationId: heartbeat
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  description: PAYCOMET API key (Query privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/invoices:
        post:
            summary: Search Mirakl invoices
            tags:
                - mirakl
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                        description: Error code given by PAYCOMET.
                                    invoices:
                                        type: array
                                        items:
                                            type: object
                                            description: 'Detail of invoices'
                                            properties:
                                                id:
                                                    type: integer
                                                accountId:
                                                    type: integer
                                                shopId:
                                                    type: integer
                                                invoiceId:
                                                    type: integer
                                                invoiceUniqueId:
                                                    type: string
                                                invoiceType:
                                                    type: string
                                                dateCreated:
                                                    type: string
                                                endTime:
                                                    type: string
                                                amount:
                                                    type: number
                                                currency:
                                                    type: string
                                                description:
                                                    type: string
                                                iban:
                                                    type: string
                                                bic:
                                                    type: string
                                                owner:
                                                    type: string
                                                state:
                                                    type: integer
                                                lastExecutionTime:
                                                    type: string
                                                errorId:
                                                    type: integer
                            examples:
                                example-1: {}
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            operationId: miraklInvoicesSearch
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                payment:
                                    type: object
                                    properties:
                                        terminal:
                                            type: integer
                                            description: Product or terminal Id.
                                        shopsIds:
                                            type: array
                                            items:
                                                type: integer
                                                example: 1
                                                description: Mirakl shops identifiers
                                        invoicesIds:
                                            type: array
                                            items:
                                                type: integer
                                                example: 1
                                                description: Mirakl invoices identifiers
                                        fromDate:
                                            type: string
                                            example: "20200507020000"
                                            description: 'Start datetime limit (format: YmdHis)'
                                        toDate:
                                            type: string
                                            example: "20200508000000"
                                            description: 'Finish datetime limit (format: YmdHis)'
                                    required:
                                        - terminal
                                        - shopsIds
                                        - fromDate
                                        - toDate
                description: ''
            description: nirakl_invoice_search
        parameters:
            - name: PAYCOMET-API-TOKEN
              in: header
              required: true
              description: PAYCOMET API key (Query privilege required)
              schema:
                  type: string
                  example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/ip:
        post:
            summary: Retrieves country info by IP
            tags:
                - ip
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                    isoNum:
                                        type: integer
                                        example: 840
                                    iso2:
                                        type: string
                                        example: "US"
                                    iso3:
                                        type: string
                                        example: "USA"
                                    name:
                                        type: string
                                        example: "Estados Unidos"
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                                ip:
                                    type: string
                                    example: "216.58.217.36"
                            required:
                                - terminal
                                - ip
            description: Country by IP
            operationId: getCountrybyIP
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  description: PAYCOMET API key (Query privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/ip/remote:
        post:
            summary: Retrieves request remote address IP
            tags:
                - ip
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                    remoteAddress:
                                        type: integer
                                        example: "216.58.217.36"
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                            required:
                                - terminal
            description: Remote address by request
            operationId: getRemoteAddress
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  description: PAYCOMET API key (Query privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/methods:
        post:
            summary: Retrieves product methods
            tags:
                - methods
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: array
                                items:
                                    type: object
                                    properties:
                                        id:
                                            type: integer
                                            example: 11
                                        name:
                                            type: string
                                            example: "Bizum"
                                        description:
                                            type: string
                                            example: "Pagos a particulares a través de teléfono"
                                        active:
                                            type: string
                                            example: 1
                                        allowAPIRefunds:
                                            type: integer
                                            example: 1
                                        logo_square:
                                            type: string
                                            example: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMYAAADGCAYA"
                                            description: encoded image of squared logo in base64 format
                                        logo_landscape:
                                            type: string
                                            example: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMYAAADGCAYA"
                                            description: encoded image of landscape logo in base64 format
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                            required:
                                - terminal
            description: Payment methods of the client
            operationId: getUserPaymentMethods
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  description: PAYCOMET API key (Query privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/form:
        post:
            summary: Create form view for user capture
            tags:
                - form
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                    challengeUrl:
                                        type: string
                                        example: "https://challenge.paycomet.com/challenge"

                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                operationType:
                                    type: integer
                                    example: 107
                                    description: PAYCOMET operation type (ID 1 - authorization, 3 - preauthorization, 9 - subscription, 107 - tokenization, 114 - authorization by reference, 116 - dcc authorization).
                                language:
                                    type: string
                                    example: "es"
                                    description: "Language for user interface."
                                terminal:
                                    type: integer
                                    description: Product or terminal Id
                                productDescription:
                                    type: string
                                    example: "Card tokenization for John Doe"
                                    description: Product description (only in 107 - tokenization).
                                payment:
                                    type: object
                                    description: Payment data (mandatory, except in 107 - tokenization).
                                    properties:
                                        terminal:
                                            type: integer
                                            description: Product or terminal Id.
                                        methods:
                                            type: array
                                            description: PAYCOMET payment methods available for customer (by default, all availables for merchant).
                                            items:
                                                type: integer
                                                example: 1
                                                description: PAYCOMET payment method ID. 1 is for card.
                                        excludedMethods:
                                            type: array
                                            description: PAYCOMET payment methods excluded for customer (by default, none).
                                            items:
                                                type: integer
                                                example: 1
                                                description: PAYCOMET payment method ID. 1 is for card.
                                        order:
                                            type: string
                                            example: "PAY987654321"
                                            description: "Unique reference for merchant's purchase"
                                        amount:
                                            type: string
                                            example: "202"
                                            description: 'Amount of the operation in number format. 1.00 EURO = 100, 4.50 EUROS = 450...'
                                        currency:
                                            type: string
                                            example: "EUR"
                                            description: 'Currency of the transaction. '
                                        idUser:
                                            type: integer
                                            example: 12345678
                                            description: Identification of user card given by PAYCOMET. Mandatory if is a card payment.
                                        tokenUser:
                                            type: string
                                            example: "WHlSWmVDdzVQeUZ"
                                            description: Identification of user card given by PAYCOMET. Mandatory if is a card payment.
                                        secure:
                                            type: integer
                                            example: 1
                                            description: 0 or 1. Indicates if the transaction is secure.
                                        scoring:
                                            type: string
                                            example: 0
                                            description: Risk scoring value from 0 to 100.
                                        productDescription:
                                            type: string
                                            example: "Random product"
                                            description: Description of the product sold.
                                        merchantDescriptor:
                                            type: string
                                            description: 'Allows the business to send a text up to 25 characters that will be printed on the customer invoice. Limited to simple characters, no accents or special characters.'
                                        userInteraction:
                                            type: integer
                                            example: 1
                                            description: Indicates wether the business can interact with the customer
                                        # escrowTargets:
                                        #   type: array
                                        #   items:
                                        #     type: object
                                        #     description: Optional Identification of the recipients of receipts in ESCROW operations
                                        #     properties:
                                        #       id:
                                        #         type: string
                                        #         description: Recipient identifier
                                        #         example: 123
                                        #       amount:
                                        #         type: integer
                                        #         description: "Recipient' amount in number format. 1.00 EURO = 100, 4.50 EUROS = 450..."
                                        #         example: 100
                                        trxType:
                                            type: string
                                            description: Obligatory only if an MIT exception has been selected in scaException
                                        scaException:
                                            type: string
                                            description: 'TYPE OF EXCEPTION TO THE SECURE PAYMENT. If not specified, PAYCOMET will try to assign it the most appropriate possible'
                                        urlOk:
                                            type: string
                                            example: "https://www.mycustom.url/ok"
                                            description: Url where the customer will be redirected after finishing a correct transaction. (Max 255 characters)
                                        urlKo:
                                            type: string
                                            example: "https://www.mycustom.url/ko"
                                            description: Url where the customer will be redirected after finishing a failed transaction. (Max 255 characters)
                                        tokenize:
                                            type: integer
                                            description: Attempt to tokenize if the methodId provided allows it.
                                            example: 1
                                        merchantData:
                                            type: object
                                            description: 'Client authentication information. The more information is provided in this field, the more likely the authorization of the operation will be without requiring additional authentication. For this reason, it is recommended to send as much information as possible.'
                                            properties:
                                                customer:
                                                    type: object
                                                    properties:
                                                        id:
                                                            type: string
                                                            description: Store customer identifier
                                                            example: "customer123"
                                                        name:
                                                            type: string
                                                            description: Name of customer
                                                            example: John
                                                        surname:
                                                            type: string
                                                            description: Surname of customer
                                                            example: Doe
                                                        email:
                                                            type: string
                                                            description: Email of customer
                                                            example: jdoe@myemail.com
                                                        homePhone:
                                                            type: object
                                                            description: Node with user home phone data
                                                            properties:
                                                                cc:
                                                                    type: integer
                                                                    description: "International dialling code of the customer’s home telephone number"
                                                                    example: 34
                                                                subscriber:
                                                                    type: integer
                                                                    description: "Customer’s home telephone number"
                                                                    example: 91820332211
                                                        mobilePhone:
                                                            type: object
                                                            description: Node with user mobile phone data
                                                            properties:
                                                                cc:
                                                                    type: integer
                                                                    description: "International dialling code of the customer’s mobile telephone number"
                                                                    example: 34
                                                                subscriber:
                                                                    type: integer
                                                                    description: "Customer’s mobile telephone number"
                                                                    example: 640456999
                                                        workPhone:
                                                            type: object
                                                            description: Node with user work phone data
                                                            properties:
                                                                cc:
                                                                    type: integer
                                                                    description: "International dialling code of the customer’s work telephone number"
                                                                    example: 34
                                                                subscriber:
                                                                    type: integer
                                                                    description: "Customer’s work telephone number"
                                                                    example: 913984300
                                                        firstBuy:
                                                            type: string
                                                            description: Indicates whether the user has already bought in this business ('si' if has made a operation, 'no' in opposite scenario)
                                                shipping:
                                                    type: object
                                                    description: Node with shipping address related information.
                                                    properties:
                                                        shipAddrCity:
                                                            type: string
                                                            description: City of delivery address.
                                                            example: Springfield
                                                        shipAddrCountry:
                                                            type: string
                                                            description: Numerical code (ISO 3166-1) of the country of the delivery address
                                                            example: 840
                                                        shipAddrLine1:
                                                            type: string
                                                            description: Delivery address, line 1
                                                            example: 742 Evergreen Terrace
                                                        shipAddrLine2:
                                                            type: string
                                                            description: Delivery address, line 2
                                                        shipAddrLine3:
                                                            type: string
                                                            description: Delivery address, line 3
                                                        shipAddrPostCode:
                                                            type: string
                                                            description: Post code of the delivery address
                                                            example: 89011
                                                        shipAddrState:
                                                            type: string
                                                            description: State or province of the delivery address. Must comply with ISO 3166-2.
                                                            example: Z
                                                billing:
                                                    type: object
                                                    properties:
                                                        billAddrCity:
                                                            type: string
                                                            description: City of delivery address.
                                                            example: Scranton
                                                        billAddrCountry:
                                                            type: string
                                                            description: Numerical code (ISO 3166-1) of the country of the delivery address
                                                            example: 840
                                                        billAddrLine1:
                                                            type: string
                                                            description: Delivery address, line 1
                                                            example: 1725 Slough Avenue
                                                        billAddrLine2:
                                                            type: string
                                                            description: Delivery address, line 2
                                                        billAddrLine3:
                                                            type: string
                                                            description: Delivery address, line 3
                                                        billAddrPostCode:
                                                            type: string
                                                            description: Post code of the delivery address
                                                            example: 18501
                                                        billAddrState:
                                                            type: string
                                                            description: State or province of the delivery address. Must comply with ISO 3166-2.
                                                            example: Z
                                                acctID:
                                                    type: string
                                                    description: Additional information you want to send to identify the account
                                                acctInfo:
                                                    type: object
                                                    description: Node with additional information on the user account at the store
                                                    properties:
                                                        chAccAgeInd:
                                                            type: string
                                                            description: "Period of time that the customer has had the account at the business. Possible values: 01 = No account (checkout as guest), 02 = Created in this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                            example: 05
                                                        chAccChange:
                                                            type: string
                                                            description: "Date on which the user account with the business was last modified, including the invoice or delivery address, the new payment account or new added users. Date format: YYYYMMDD"
                                                            example: 20200704
                                                        chAccChangeInd:
                                                            type: string
                                                            description: "Period of time passed since the payment user’s account with the business was last modified, including the invoice or delivery address, the new payment account or new added users. Accepted values: 01 = Modified in this transaction, 02 = Under 30 days, 03 = 30-60 days, 04 = Over 60 days"
                                                            example: 03
                                                        chAccDate:
                                                            type: string
                                                            description: "Date on which the payment user opened the account with the business. Date format: YYYYMMDD"
                                                            example: 20191225
                                                        chAccPwChange:
                                                            type: string
                                                            description: "Date on which the payment user changed the password of their account with the business, or reset their account. Date format: YYYYMMDD"
                                                            example: 20191225
                                                        chAccPwChangeInd:
                                                            type: string
                                                            description: "Indicates the period of time since the payment user’s account with the business changed its password or was reset. Accepted values: 01 = No changes, 02 = Changed during this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                            example: 01
                                                        nbPurchaseAccount:
                                                            type: integer
                                                            description: Number of purchases with this account during the last six months
                                                            example: 2
                                                        provisionAttemptsDay:
                                                            type: integer
                                                            description: Number of attempts to add a card in the last 24 hours
                                                            example: 0
                                                        txnActivityDay:
                                                            type: string
                                                            description: Number of transactions (successful and abandoned) for this account with the business in all payment accounts in the last 24 hours
                                                            example: 0
                                                        txnActivityYear:
                                                            type: string
                                                            description: Number of transactions (successful and abandoned) for this account of the payment user with the business in all payment accounts of the last year
                                                            example: 3
                                                        paymentAccAge:
                                                            type: string
                                                            description: Date on which the payment account was registered on the payment user’s account with the business.
                                                            example: 20191228
                                                        paymentAccInd:
                                                            type: string
                                                            description: "Indicates the period of time which the payment account was registered on the payment user’s account with the business. Accepted values: 01 = No account (checkout as guest), 02 = During this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                            example: 05
                                                        shipAddressUsage:
                                                            type: string
                                                            description: "Date on which the delivery address used for this transaction was used for the first time with the business. Date format: YYYYMMDD"
                                                            example: 20191228
                                                        shipAddressUsageInd:
                                                            type: string
                                                            description: "Indicates when the delivery address used for this transaction was used for the first time with the business. Accepted values: 01 = This transaction, 02 = Under 30 days, 03 = Between 30 and 60 days, 04 = Over 60 days"
                                                            example: 03
                                                        shipNameIndicator:
                                                            type: string
                                                            description: "Indicates whether the name of the payment user on the account is identical to the delivery name used for this transaction. Accepted values: 01 = Name on the account identical to the delivery name, 02 = Name on the account different from the delivery name"
                                                            example: 01
                                                        suspiciousAccActivity:
                                                            type: string
                                                            description: "Indicates whether the business has experienced suspicious activity (including previous fraud) on the payment user’s account. Accepted values: 01 = No record of suspicious activity, 02 = Record of suspicious activity"
                                                            example: 01
                                                merchantRiskIndicator:
                                                    type: object
                                                    description: Node with additional information of the business representing the evaluation of the level of risk of fraud for authentication. The delivery of this information is highly recommended
                                                    properties:
                                                        deliveryEmailAddress:
                                                            type: string
                                                            description: For electronic delivery, the email address to which the goods were delivered
                                                            example: jdoe@myemail.com
                                                        deliveryTimeframe:
                                                            type: string
                                                            description: "Indicates the delivery period of the goods. Accepted values: 01 = Electronic delivery, 02 = Delivery on the same day, 03 = 24 hour delivery, 04 = Delivery in 2 days or more"
                                                            example: 04
                                                        giftCardAmount:
                                                            type: string
                                                            description: "For purchases from prepaid cards or gift cards, the total amount of the purchase in major units (for example, USD 123.45 is 123)"
                                                            example: 123
                                                        giftCardCount:
                                                            type: integer
                                                            description: "For purchases from prepaid cards or gift cards, total count of prepaid cards or gift cards/gift codes purchased"
                                                            example: 1
                                                        giftCardCurr:
                                                            type: string
                                                            description: "For the purchase of prepaid/gift cards, code ISO-4217 of currency of the card"
                                                            example: 840
                                                        preOrderDate:
                                                            type: string
                                                            description: "For a pre-ordered purchase, the forecast availability date of the goods. Date format: YYYYMMDD"
                                                            example: 20201001
                                                        preOrderPurchaseInd:
                                                            type: string
                                                            description: "Indicates whether the customer makes an order with availability or future launch date. Accepted values: 01 = Goods available, 02 = Future availability"
                                                            example: 01
                                                        reorderItemsInd:
                                                            type: string
                                                            description: "Indicates whether the card is reordering previously purchased goods. Accepted values: 01 = First time purchased, 02 = Previously purchased"
                                                            example: 01
                                                        shipIndicator:
                                                            type: string
                                                            description: "Indicates the delivery method selected for the transaction. Businesses must select the delivery indicator code which more precisely describes the specific transaction of the payment user, not their general commercial activity. If one or more items are included in the sale, use the delivery Indicator code for physical goods, or if all products are digital, use the delivery Indicator code which describes the most expensive item. Accepted values: 01 = Delivery to the invoice address of the customer, 02 = Delivery to another verified address of the client, 03 = Delivery to an address other than that of the customer’s invoice address, 04 = Delivery to the store or collection at premises (the address of the store will be stored in the delivery address fields), 05 = Digital goods (includes online services, electronic gift cards and discount coupons), 06 = Tickets for events and trips, without delivery, 07 = Other (for example, games, digital services without delivery, subscriptions to online services, etc.)"
                                                            example: 03
                                                threeDSRequestorAuthenticationInfo:
                                                    type: object
                                                    description: Node with additional information on how the client was authenticated at the start of the session in the business account
                                                    properties:
                                                        threeDSReqAuthData:
                                                            type: string
                                                            description: Data which documents and supports a specific authentication process.
                                                        threeDSReqAuthMethod:
                                                            type: string
                                                            description: "Mechanism used by the customer to authenticate themselves in the business. Accepted values: 01 = Without 3DS authentication (for example, customer identified as guest), 02 = Logged onto the account on the ACS using the credentials of the ACS, 03 = Logged onto the account on the ACS using an affiliate identifier, 04 = Logged onto the account on the ACS using the credentials of the issuer, 05 = Logged onto the account on the ACS using a third party authentication, 06 = Logged onto the account on the ACS using a FIDO authenticator"
                                                            example: 01
                                                        threeDSReqAuthTimestamp:
                                                            type: string
                                                            description: "Date and time UTC of the authentication. Date format: YYYYMMDDHHMM"
                                                            example: 20200612113044
                                                shoppingCart:
                                                    type: array
                                                    items:
                                                        type: object
                                                        description: Node with the list of items purchased in the store
                                                        properties:
                                                            sku:
                                                                type: string
                                                                description: Product identifier
                                                                example: CODE-01
                                                            quantity:
                                                                type: integer
                                                                description: Units of product purchased
                                                                example: 1
                                                            unitPrice:
                                                                type: integer
                                                                description: unit amount of each product in integer format. 1.00 EURO = 100, 4.50 EUROS = 450, etc.
                                                                example: 295
                                                            name:
                                                                type: string
                                                                description: Product name
                                                                example: Product 01
                                                            category:
                                                                type: string
                                                                description: Product category
                                                                example: Internet gift card
                                                            articleType:
                                                                type: integer
                                                                description: article type (4 = Discount, 5 = Physical, 6 = Shipping_fee, 7 = Sales_tax, 8 = Digital, 9 = Gift_card, 10 = Store_credit, 11 = Surcharge)
                                                                example: 8
                                                addrMatch:
                                                    type: string
                                                    description: Indicates whether the delivery address is the same as the invoice address. Y = The delivery address is the same as the invoicing address, N = The delivery and invoice addresses are different
                                                    example: Y
                                                purchaseInstalData:
                                                    type: integer
                                                    description: "Mandatory for Instalment operations (MERCHANT_TRX_TYPE = I). Indicates the maximum number of deferred payment authorizations. Accepted values: The value must be greater than 1"
                                                recurringExpiry:
                                                    type: string
                                                    description: "Mandatory for Recurring and Instalment operations (MERCHANT_TRX_TYPE = I or R). The date from which there will be no more authorizations. Accepted format: YYYYMMDD"
                                                    example: 20200612
                                                recurringFrequency:
                                                    type: string
                                                    description: Mandatory for Recurring and Instalment operations (MERCHANT_TRX_TYPE = I or R). Indicates the minimum number of days between authorizations
                                                    example: 4
                                                aft:
                                                    type: object
                                                    properties:
                                                        firstName:
                                                            type: string
                                                            description: Receiver name
                                                            example: "John"
                                                        lastName:
                                                            type: string
                                                            description: Receiver lastname
                                                            example: "Doe"
                                                        country:
                                                            type: string
                                                            description: Receiver country (ISO 6133 Alpha-3)
                                                            example: SPA
                                                        address:
                                                            type: string
                                                            description: Address line of receiver. Format (^[a-zA-Z0-9\s]{1,35}$)
                                                            example: Fake Street 123
                                                        city:
                                                            type: string
                                                            description: City of the receiver. Format (^[a-zA-Z0-9\s]{1,25}$)
                                                            example: Madrid
                                                        accountNumber:
                                                            type: string
                                                            description: Receiver account number. Format (^[a-zA-Z0-9]{34}$)
                                                            example: 1234567891234567
                                                        accountNumberType:
                                                            type: integer
                                                            description: 00 (Other) | 01 (Card) | 02 (Account) | 03 (Cash) | 05 - Phone Number | 06 - Bank account number (BAN) + Bank Identification Сode (BIC) | 07 - Wallet ID  | 08 -
                                                            example: 01
                                                        Utr:
                                                            type: string
                                                            description: Should be formatted as 0000000 + Year (n-1) last digit of current year + Julian date (n-3) day of the year  + hour (n-6) hhmmss + sequence number (n-2) from 00 to 99.
                                                            example: 00000038712121200 (read as 0 123456 3 87 121212 00)
                                                        bai:
                                                            type: string
                                                            description: Business Application Identifier. AA|BI
                                                            example: BI
                                                        senderName:
                                                            type: string
                                                            description: The name of the sender
                                                            example: Jane Doe.
                                subscription:
                                    type: object
                                    properties:
                                        startDate:
                                            type: string
                                            example: "20200211"
                                            description: First day of subscription
                                        endDate:
                                            type: string
                                            example: "20200811"
                                            description: Last day of subscription
                                        periodicity:
                                            type: string
                                            example: "30"
                                            description: In days, frequency between purchases
                            required:
                                - operationType
            operationId: form
            description: 'Create form for user capture. Set operationType and attach the default request, PAYCOMET will generate a URL for user data capture. If you will use this url in an iframe please set `sandbox="allow-top-navigation allow-scripts allow-same-origin allow-forms"` iframe option to avoid blocking the redirections required by the payment process in some browsers with security restrictions.'
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  description: PAYCOMET API key (Authorization privilege required, token actions privilege required in case of tokenization)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/payments:
        post:
            summary: Executes a payment
            tags:
                - payments
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                    amount:
                                        type: string
                                        example: "202"
                                    currency:
                                        type: string
                                        example: "EUR"
                                    methodId:
                                        type: integer
                                        example: 1
                                    order:
                                        type: string
                                        example: "PAY17123301"
                                    authCode:
                                        type: string
                                        example: "AC410397"
                                    challengeUrl:
                                        type: string
                                        example: "https://challenge.paycomet.com/challenge"
                                    idUser:
                                        type: integer
                                        example: 12345678
                                    tokenUser:
                                        type: string
                                        example: "V1c1K1drRk9Ta1l"
                                    cardCountry:
                                        type: string
                                    methodData:
                                        type: array
                                        description: "Set of relevant info of the payment method used (as method reference, etc)"
                                        example: '{"entityNumber": "12345","referenceNumber": "123 987 022"}'
                                        items: {}

                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            operationId: executePurchase
            security:
                - paycometApiKey: []
            description: 'Generate a purchase. It will confirms a charge or send a challenge URL to the commerce.'
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                language:
                                    type: string
                                    description: ISO2 code of language.
                                    default: 'es'
                                    example: 'en'
                                payment:
                                    type: object
                                    properties:
                                        terminal:
                                            type: integer
                                            description: Product or terminal Id.
                                        order:
                                            type: string
                                            example: "PAY987654321"
                                            description: "Unique reference for merchant's purchase"
                                        amount:
                                            type: string
                                            example: "202"
                                            description: 'Amount of the operation in number format. 1.00 EURO = 100, 4.50 EUROS = 450...'
                                        currency:
                                            type: string
                                            example: "EUR"
                                            description: 'Currency of the transaction. '
                                        methodId:
                                            type: string
                                            example: 1
                                            description: PAYCOMET payment method ID. 1 is for card.
                                        originalIp:
                                            type: string
                                            example: "127.0.0.1"
                                            description: IP Address of the customer that initiated the payment transaction
                                        secure:
                                            type: integer
                                            example: 1
                                            description: 0 or 1. Indicates if the transaction is secure.
                                        idUser:
                                            type: integer
                                            example: 12345678
                                            description: Identification of user card given by PAYCOMET. Mandatory if is a card payment.
                                        tokenUser:
                                            type: string
                                            example: "WHlSWmVDdzVQeUZ"
                                            description: Identification of user card given by PAYCOMET. Mandatory if is a card payment.
                                        scoring:
                                            type: string
                                            description: Risk scoring value from 0 to 100.
                                        productDescription:
                                            type: string
                                            example: "Random product"
                                            description: Description of the product sold.
                                        merchantDescriptor:
                                            type: string
                                            description: 'Allows the business to send a text up to 25 characters that will be printed on the customer invoice. Limited to simple characters, no accents or special characters.'
                                        userInteraction:
                                            type: integer
                                            example: 1
                                            description: Indicates wether the business can interact with the customer
                                        # escrowTargets:
                                        #   type: array
                                        #   items:
                                        #     type: object
                                        #     description: Optional Identification of the recipients of receipts in ESCROW operations
                                        #     properties:
                                        #       id:
                                        #         type: string
                                        #         description: Recipient identifier
                                        #         example: 123
                                        #       amount:
                                        #         type: integer
                                        #         description: "Recipient' amount in number format. 1.00 EURO = 100, 4.50 EUROS = 450..."
                                        #         example: 100
                                        trxType:
                                            type: string
                                            description: Obligatory only if an MIT exception has been selected in scaException
                                        scaException:
                                            type: string
                                            description: 'TYPE OF EXCEPTION TO THE SECURE PAYMENT. If not specified, PAYCOMET will try to assign it the most appropriate possible'
                                        urlOk:
                                            type: string
                                            example: "https://www.mycustom.url/ok"
                                            description: Url where the customer will be redirected after finishing a correct transaction. (Max 255 characters)
                                        urlKo:
                                            type: string
                                            example: "https://www.mycustom.url/ko"
                                            description: Url where the customer will be redirected after finishing a failed transaction. (Max 255 characters)
                                        notifyDirectPayment:
                                            type: integer
                                            description: "Configurate POST notification of the operation result in frictionless payment (possible values: 1 - force notify, 2 - not notify). It will notify if is not informed"
                                            example: 1
                                        tokenize:
                                            type: integer
                                            description: Attempt to tokenize if the methodId provided allows it.
                                            example: 1
                                        merchantData:
                                            type: object
                                            description: 'Client authentication information. The more information is provided in this field, the more likely the authorization of the operation will be without requiring additional authentication. For this reason, it is recommended to send as much information as possible.'
                                            properties:
                                                customer:
                                                    type: object
                                                    properties:
                                                        id:
                                                            type: string
                                                            description: Store customer identifier
                                                            example: "customer123"
                                                        name:
                                                            type: string
                                                            description: Name of customer
                                                            example: John
                                                        surname:
                                                            type: string
                                                            description: Surname of customer
                                                            example: Doe
                                                        email:
                                                            type: string
                                                            description: Email of customer
                                                            example: jdoe@myemail.com
                                                        homePhone:
                                                            type: object
                                                            description: Node with user home phone data
                                                            properties:
                                                                cc:
                                                                    type: integer
                                                                    description: "International dialling code of the customer’s home telephone number"
                                                                    example: 34
                                                                subscriber:
                                                                    type: integer
                                                                    description: "Customer’s home telephone number"
                                                                    example: 91820332211
                                                        mobilePhone:
                                                            type: object
                                                            description: Node with user mobile phone data
                                                            properties:
                                                                cc:
                                                                    type: integer
                                                                    description: "International dialling code of the customer’s mobile telephone number"
                                                                    example: 34
                                                                subscriber:
                                                                    type: integer
                                                                    description: "Customer’s mobile telephone number"
                                                                    example: 640456999
                                                        workPhone:
                                                            type: object
                                                            description: Node with user work phone data
                                                            properties:
                                                                cc:
                                                                    type: integer
                                                                    description: "International dialling code of the customer’s work telephone number"
                                                                    example: 34
                                                                subscriber:
                                                                    type: integer
                                                                    description: "Customer’s work telephone number"
                                                                    example: 913984300
                                                        firstBuy:
                                                            type: string
                                                            description: Indicates whether the user has already bought in this business ('si' if has made a operation, 'no' in opposite scenario)
                                                shipping:
                                                    type: object
                                                    description: Node with shipping address related information.
                                                    properties:
                                                        shipAddrCity:
                                                            type: string
                                                            description: City of delivery address.
                                                            example: Springfield
                                                        shipAddrCountry:
                                                            type: string
                                                            description: Numerical code (ISO 3166-1) of the country of the delivery address
                                                            example: 840
                                                        shipAddrLine1:
                                                            type: string
                                                            description: Delivery address, line 1
                                                            example: 742 Evergreen Terrace
                                                        shipAddrLine2:
                                                            type: string
                                                            description: Delivery address, line 2
                                                        shipAddrLine3:
                                                            type: string
                                                            description: Delivery address, line 3
                                                        shipAddrPostCode:
                                                            type: string
                                                            description: Post code of the delivery address
                                                            example: 89011
                                                        shipAddrState:
                                                            type: string
                                                            description: State or province of the delivery address. Must comply with ISO 3166-2.
                                                            example: Z
                                                billing:
                                                    type: object
                                                    properties:
                                                        billAddrCity:
                                                            type: string
                                                            description: City of delivery address.
                                                            example: Scranton
                                                        billAddrCountry:
                                                            type: string
                                                            description: Numerical code (ISO 3166-1) of the country of the delivery address
                                                            example: 840
                                                        billAddrLine1:
                                                            type: string
                                                            description: Delivery address, line 1
                                                            example: 1725 Slough Avenue
                                                        billAddrLine2:
                                                            type: string
                                                            description: Delivery address, line 2
                                                        billAddrLine3:
                                                            type: string
                                                            description: Delivery address, line 3
                                                        billAddrPostCode:
                                                            type: string
                                                            description: Post code of the delivery address
                                                            example: 18501
                                                        billAddrState:
                                                            type: string
                                                            description: State or province of the delivery address. Must comply with ISO 3166-2.
                                                            example: Z
                                                acctID:
                                                    type: string
                                                    description: Additional information you want to send to identify the account
                                                acctInfo:
                                                    type: object
                                                    description: Node with additional information on the user account at the store
                                                    properties:
                                                        chAccAgeInd:
                                                            type: string
                                                            description: "Period of time that the customer has had the account at the business. Possible values: 01 = No account (checkout as guest), 02 = Created in this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                            example: 05
                                                        chAccChange:
                                                            type: string
                                                            description: "Date on which the user account with the business was last modified, including the invoice or delivery address, the new payment account or new added users. Date format: YYYYMMDD"
                                                            example: 20200704
                                                        chAccChangeInd:
                                                            type: string
                                                            description: "Period of time passed since the payment user’s account with the business was last modified, including the invoice or delivery address, the new payment account or new added users. Accepted values: 01 = Modified in this transaction, 02 = Under 30 days, 03 = 30-60 days, 04 = Over 60 days"
                                                            example: 03
                                                        chAccDate:
                                                            type: string
                                                            description: "Date on which the payment user opened the account with the business. Date format: YYYYMMDD"
                                                            example: 20191225
                                                        chAccPwChange:
                                                            type: string
                                                            description: "Date on which the payment user changed the password of their account with the business, or reset their account. Date format: YYYYMMDD"
                                                            example: 20191225
                                                        chAccPwChangeInd:
                                                            type: string
                                                            description: "Indicates the period of time since the payment user’s account with the business changed its password or was reset. Accepted values: 01 = No changes, 02 = Changed during this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                            example: 01
                                                        nbPurchaseAccount:
                                                            type: integer
                                                            description: Number of purchases with this account during the last six months
                                                            example: 2
                                                        provisionAttemptsDay:
                                                            type: integer
                                                            description: Number of attempts to add a card in the last 24 hours
                                                            example: 0
                                                        txnActivityDay:
                                                            type: string
                                                            description: Number of transactions (successful and abandoned) for this account with the business in all payment accounts in the last 24 hours
                                                            example: 0
                                                        txnActivityYear:
                                                            type: string
                                                            description: Number of transactions (successful and abandoned) for this account of the payment user with the business in all payment accounts of the last year
                                                            example: 3
                                                        paymentAccAge:
                                                            type: string
                                                            description: Date on which the payment account was registered on the payment user’s account with the business.
                                                            example: 20191228
                                                        paymentAccInd:
                                                            type: string
                                                            description: "Indicates the period of time which the payment account was registered on the payment user’s account with the business. Accepted values: 01 = No account (checkout as guest), 02 = During this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                            example: 05
                                                        shipAddressUsage:
                                                            type: string
                                                            description: "Date on which the delivery address used for this transaction was used for the first time with the business. Date format: YYYYMMDD"
                                                            example: 20191228
                                                        shipAddressUsageInd:
                                                            type: string
                                                            description: "Indicates when the delivery address used for this transaction was used for the first time with the business. Accepted values: 01 = This transaction, 02 = Under 30 days, 03 = Between 30 and 60 days, 04 = Over 60 days"
                                                            example: 03
                                                        shipNameIndicator:
                                                            type: string
                                                            description: "Indicates whether the name of the payment user on the account is identical to the delivery name used for this transaction. Accepted values: 01 = Name on the account identical to the delivery name, 02 = Name on the account different from the delivery name"
                                                            example: 01
                                                        suspiciousAccActivity:
                                                            type: string
                                                            description: "Indicates whether the business has experienced suspicious activity (including previous fraud) on the payment user’s account. Accepted values: 01 = No record of suspicious activity, 02 = Record of suspicious activity"
                                                            example: 01
                                                merchantRiskIndicator:
                                                    type: object
                                                    description: Node with additional information of the business representing the evaluation of the level of risk of fraud for authentication. The delivery of this information is highly recommended
                                                    properties:
                                                        deliveryEmailAddress:
                                                            type: string
                                                            description: For electronic delivery, the email address to which the goods were delivered
                                                            example: jdoe@myemail.com
                                                        deliveryTimeframe:
                                                            type: string
                                                            description: "Indicates the delivery period of the goods. Accepted values: 01 = Electronic delivery, 02 = Delivery on the same day, 03 = 24 hour delivery, 04 = Delivery in 2 days or more"
                                                            example: 04
                                                        giftCardAmount:
                                                            type: string
                                                            description: "For purchases from prepaid cards or gift cards, the total amount of the purchase in major units (for example, USD 123.45 is 123)"
                                                            example: 123
                                                        giftCardCount:
                                                            type: integer
                                                            description: For purchases from prepaid cards or gift cards, total count of prepaid cards or gift cards/gift codes purchased
                                                            example: 1
                                                        giftCardCurr:
                                                            type: string
                                                            description: "For the purchase of prepaid/gift cards, code ISO-4217 of currency of the card"
                                                            example: 840
                                                        preOrderDate:
                                                            type: string
                                                            description: "For a pre-ordered purchase, the forecast availability date of the goods. Date format: YYYYMMDD"
                                                            example: 20201001
                                                        preOrderPurchaseInd:
                                                            type: string
                                                            description: "Indicates whether the customer makes an order with availability or future launch date. Accepted values: 01 = Goods available, 02 = Future availability"
                                                            example: 01
                                                        reorderItemsInd:
                                                            type: string
                                                            description: "Indicates whether the card is reordering previously purchased goods. Accepted values: 01 = First time purchased, 02 = Previously purchased"
                                                            example: 01
                                                        shipIndicator:
                                                            type: string
                                                            description: "Indicates the delivery method selected for the transaction. Businesses must select the delivery indicator code which more precisely describes the specific transaction of the payment user, not their general commercial activity. If one or more items are included in the sale, use the delivery Indicator code for physical goods, or if all products are digital, use the delivery Indicator code which describes the most expensive item. Accepted values: 01 = Delivery to the invoice address of the customer, 02 = Delivery to another verified address of the client, 03 = Delivery to an address other than that of the customer’s invoice address, 04 = Delivery to the store or collection at premises (the address of the store will be stored in the delivery address fields), 05 = Digital goods (includes online services, electronic gift cards and discount coupons), 06 = Tickets for events and trips, without delivery, 07 = Other (for example, games, digital services without delivery, subscriptions to online services, etc.)"
                                                            example: 03
                                                threeDSRequestorAuthenticationInfo:
                                                    type: object
                                                    description: Node with additional information on how the client was authenticated at the start of the session in the business account
                                                    properties:
                                                        threeDSReqAuthData:
                                                            type: string
                                                            description: Data which documents and supports a specific authentication process.
                                                        threeDSReqAuthMethod:
                                                            type: string
                                                            description: "Mechanism used by the customer to authenticate themselves in the business. Accepted values: 01 = Without 3DS authentication (for example, customer identified as guest), 02 = Logged onto the account on the ACS using the credentials of the ACS, 03 = Logged onto the account on the ACS using an affiliate identifier, 04 = Logged onto the account on the ACS using the credentials of the issuer, 05 = Logged onto the account on the ACS using a third party authentication, 06 = Logged onto the account on the ACS using a FIDO authenticator"
                                                            example: 01
                                                        threeDSReqAuthTimestamp:
                                                            type: string
                                                            description: "Date and time UTC of the authentication. Date format: YYYYMMDDHHMM"
                                                            example: 20200612113044
                                                shoppingCart:
                                                    type: array
                                                    items:
                                                        type: object
                                                        description: Node with the list of items purchased in the store
                                                        properties:
                                                            sku:
                                                                type: string
                                                                description: Product identifier
                                                                example: CODE-01
                                                            quantity:
                                                                type: integer
                                                                description: Units of product purchased
                                                                example: 1
                                                            unitPrice:
                                                                type: integer
                                                                description: unit amount of each product in integer format. 1.00 EURO = 100, 4.50 EUROS = 450, etc.
                                                                example: 295
                                                            name:
                                                                type: string
                                                                description: Product name
                                                                example: Product 01
                                                            category:
                                                                type: string
                                                                description: Product category
                                                                example: Internet gift card
                                                            articleType:
                                                                type: integer
                                                                description: article type (4 = Discount, 5 = Physical, 6 = Shipping_fee, 7 = Sales_tax, 8 = Digital, 9 = Gift_card, 10 = Store_credit, 11 = Surcharge)
                                                                example: 8
                                                addrMatch:
                                                    type: string
                                                    description: "Indicates whether the delivery address is the same as the invoice address. Y = The delivery address is the same as the invoicing address, N = The delivery and invoice addresses are different"
                                                    example: Y
                                                purchaseInstalData:
                                                    type: integer
                                                    description: "Mandatory for Instalment operations (MERCHANT_TRX_TYPE = I). Indicates the maximum number of deferred payment authorizations. Accepted values: The value must be greater than 1"
                                                recurringExpiry:
                                                    type: string
                                                    description: "Mandatory for Recurring and Instalment operations (MERCHANT_TRX_TYPE = I or R). The date from which there will be no more authorizations. Accepted format: YYYYMMDD"
                                                    example: 20200612
                                                recurringFrequency:
                                                    type: string
                                                    description: "Mandatory for Recurring and Instalment operations (MERCHANT_TRX_TYPE = I or R). Indicates the minimum number of days between authorizations"
                                                    example: 4
                                                aft:
                                                    type: object
                                                    properties:
                                                        firstName:
                                                            type: string
                                                            description: Receiver name
                                                            example: "John"
                                                        lastName:
                                                            type: string
                                                            description: Receiver lastname
                                                            example: "Doe"
                                                        country:
                                                            type: string
                                                            description: Receiver country (ISO 6133 Alpha-3)
                                                            example: SPA
                                                        address:
                                                            type: string
                                                            description: Address line of receiver. Format (^[a-zA-Z0-9\s]{1,35}$)
                                                            example: Fake Street 123
                                                        city:
                                                            type: string
                                                            description: City of the receiver. Format (^[a-zA-Z0-9\s]{1,25}$)
                                                            example: Madrid
                                                        accountNumber:
                                                            type: string
                                                            description: Receiver account number. Format (^[a-zA-Z0-9]{34}$)
                                                            example: 1234567891234567
                                                        accountNumberType:
                                                            type: integer
                                                            description: 00 (Other) | 01 (Card) | 02 (Account) | 03 (Cash) | 05 - Phone Number | 06 - Bank account number (BAN) + Bank Identification Сode (BIC) | 07 - Wallet ID  | 08 -
                                                            example: 01
                                                        Utr:
                                                            type: string
                                                            description: Should be formatted as 0000000 + Year (n-1) last digit of current year + Julian date (n-3) day of the year  + hour (n-6) hhmmss + sequence number (n-2) from 00 to 99.
                                                            example: 00000038712121200 (read as 0 123456 3 87 121212 00)
                                                        bai:
                                                            type: string
                                                            description: Business Application Identifier. AA|BI
                                                            example: BI
                                                        senderName:
                                                            type: string
                                                            description: The name of the sender
                                                            example: Jane Doe.
                                    required:
                                        - order
                                        - amount
                                        - currency
                                        - originalIp
                                        - methodId
                                        - terminal
                                        - secure
                                        - idUser
                                        - tokenUser
                        examples:
                            example-1: {}
                description: ''
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  description: PAYCOMET API key (Authorization privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/payments/{order}/refund:
        post:
            summary: Perform a refund
            tags:
                - refund
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                    amount:
                                        type: string
                                        example: "202"
                                    currency:
                                        type: string
                                        example: "EUR"
                                    methodId:
                                        type: integer
                                        example: 1
                                    order:
                                        type: string
                                        example: "PAY17123301"
                                    authCode:
                                        type: string
                                        example: "AC410397"
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            operationId: executeRefund
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                payment:
                                    type: object
                                    properties:
                                        terminal:
                                            type: integer
                                            description: Product or terminal Id.
                                        amount:
                                            type: string
                                            example: "202"
                                            description: 'Amount to refund in number format. If empty, total refund asumed.'
                                        currency:
                                            type: string
                                            example: "EUR"
                                            description: Currency of the transaction
                                        authCode:
                                            type: string
                                            description: ' Original bank code of the authorization of the transaction.'
                                        originalIp:
                                            type: string
                                            example: "127.0.0.1"
                                            description: IP Address of the application of the business.
                                        tokenUser:
                                            type: string
                                            example: "WHlSWmVDdzVQeUZ"
                                            description: Token code associated with the IdUser.
                                        idUser:
                                            type: integer
                                            example: 12345678
                                            description: Unique identifier of the user registered in the system.
                                        notifyDirectPayment:
                                            type: integer
                                            description: "Configurate POST notification of the operation result (possible values: 1 - force notify, 2 - not notify). It will notify if is not informed"
                                            example: 1
                                    required:
                                        - terminal
                                        - amount
                                        - currency
                                        - authCode
                                        - originalIp
                description: ''
            description: execute_refund
        parameters:
            - schema:
                  type: string
              name: order
              in: path
              required: true
            - name: PAYCOMET-API-TOKEN
              in: header
              required: true
              description: PAYCOMET API key (Refund privilege required)
              schema:
                  type: string
                  example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/payments/{order}/info:
        post:
            summary: Get info of a order
            tags:
                - payments
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    payment:
                                        type: object
                                        properties:
                                            paycometId:
                                                type: integer
                                                example: 123456789
                                                description: PAYCOMET identifier
                                            operationId:
                                                type: integer
                                                example: 123456789
                                                description: Bank Reference Identifier
                                            methodId:
                                                type: integer
                                                example: 1
                                                description: PAYCOMET payment method ID. 1 is for card.
                                            timestamp:
                                                type: string
                                                example: "20200318091130"
                                                description: Timestamp of transaction
                                            settlementDate:
                                                type: string
                                                example: "20200318091210"
                                                description: Settlement date of transaction
                                            order:
                                                type: string
                                                example: "PAY123456789"
                                                description: "Unique reference for merchant's purchase"
                                            operationType:
                                                type: integer
                                                example: "1"
                                                description: PAYCOMET operation type ID.
                                            operationName:
                                                type: string
                                                example: "Autorización"
                                                description: PAYCOMET operation type description.
                                            state:
                                                type: integer
                                                description: Identifier of the state of the operation. 0 means operation failed, 1 operation correct, 2 operation unfinished (pending payment).
                                                example: 1
                                            stateName:
                                                type: string
                                                description: Literal of the state of the operation.
                                                example: "Completado"
                                            response:
                                                type: string
                                                example: "OK"
                                                description: Status of transation. OK, KO o UF (pending payment).
                                            terminal:
                                                type: integer
                                                description: Product or terminal Id.
                                            terminalName:
                                                type: string
                                                description: Customer product name
                                                example: "PAYCOMET SANDBOX Terminal"
                                            user:
                                                type: string
                                                example: "johndoe@paycomet.com"
                                                description: Administrative user of the operation
                                            amount:
                                                type: string
                                                example: "203"
                                                description: 'Amount of the operation in number format. 1.00 EURO = 100, 4.50 EUROS = 450...'
                                            currency:
                                                type: string
                                                example: "USD"
                                                description: 'Currency of the transaction. '
                                            amountDisplay:
                                                type: string
                                                example: "2,03 $"
                                                description: 'Literal of the operation amount (with currency symbol)'
                                            amountEur:
                                                type: string
                                                example: "2.24"
                                                description: 'Amount of the operation in decimal format in terminal currency, only in successful operations'
                                            terminalCurrency:
                                                type: string
                                                example: "EUR"
                                                description: 'Currency of the PAYCOMET terminal. '
                                            amountEurDisplay:
                                                type: string
                                                example: "2,24 €"
                                                description: 'Literal of the operation amount in PAYCOMET terminal currency (with currency symbol) and possible conversion applied in multicurrency operations'
                                            errorCode:
                                                type: integer
                                                example: 0
                                                description: Error code given by PAYCOMET.
                                            errorDescription:
                                                type: string
                                                example: "Sin error"
                                                description: PAYCOMET operation type description.
                                            feeEuro:
                                                type: number
                                                example: "0,02"
                                                description: 'PAYCOMET fee for the transaction fixed per operation (in euros)'
                                            feePercent:
                                                type: number
                                                example: "0,01"
                                                description: 'PAYCOMET fee for the transaction variable per operation (in euros)'
                                            originalIp:
                                                type: string
                                                example: "172.17.0.5"
                                                description: IP Address of the customer that initiated the payment transaction
                                            pan:
                                                type: string
                                                example: "491801******4602"
                                                description: Masked credit/debit card
                                            scoring:
                                                type: string
                                                example: 0
                                                description: Risk scoring value from 0 to 100.
                                            merchantBank:
                                                type: string
                                                example: "BANCO SABADELL"
                                                description: Bank of merchant terminal.
                                            bicCode:
                                                type: string
                                                example: "BSABESBBXXX"
                                                description: Biccode of the entity by which the transaction was processed.
                                            productDescription:
                                                type: string
                                                example: "Random product"
                                                description: Description of the product sold.
                                            cardType:
                                                type: string
                                                example: "CREDIT"
                                                description: 'Type of card. If it can be identified, information on the type of card will be sent (DEBIT, CREDIT, etc). Otherwise, the field will be returned blank.'
                                            cardCategory:
                                                type: string
                                                example: "CLASSIC"
                                                description: 'Category of card. If it can be identified, information on the category of card will be sent. Otherwise, the field will be returned blank.'
                                            cardBrand:
                                                type: string
                                                example: "VISA"
                                                description: 'Brand of card. If it can be identified, information on the brand of card will be sent. Otherwise, the field will be returned blank.'
                                            cardCountry:
                                                type: string
                                                example: "ES"
                                                description: 'Country of the issuer of the card in ISO3 Code (ex.: 724 = Spain). May be left empty.'
                                            secure:
                                                type: string
                                                example: 1
                                                description: 0 or 1. Indicates if the transaction is secure.
                                            splitId:
                                                type: integer
                                                example: 123
                                                description: Split identifier in some operations
                                            issuerBank:
                                                type: string
                                                example: "SERVIRED SOCIEDAD ESPANOLA DE MEDIOS DE PAGO, S.A."
                                                description: Bank of the card
                                            authCode:
                                                type: string
                                                example: "492541"
                                                description: Authorization bank code of the transaction (required to execute a return).
                                            merchantData:
                                                type: object
                                                description: 'Client authentication information. The more information is provided in this field, the more likely the authorization of the operation will be without requiring additional authentication. For this reason, it is recommended to send as much information as possible.'
                                                properties:
                                                    customer:
                                                        type: object
                                                        properties:
                                                            id:
                                                                type: string
                                                                description: Store customer identifier
                                                                example: "customer123"
                                                            name:
                                                                type: string
                                                                description: Name of customer
                                                                example: John
                                                            surname:
                                                                type: string
                                                                description: Surname of customer
                                                                example: Doe
                                                            email:
                                                                type: string
                                                                description: Email of customer
                                                                example: jdoe@myemail.com
                                                            homePhone:
                                                                type: object
                                                                description: Node with user home phone data
                                                                properties:
                                                                    cc:
                                                                        type: integer
                                                                        description: "International dialling code of the customer’s home telephone number"
                                                                        example: 34
                                                                    subscriber:
                                                                        type: integer
                                                                        description: "Customer’s home telephone number"
                                                                        example: 91820332211
                                                            mobilePhone:
                                                                type: object
                                                                description: Node with user mobile phone data
                                                                properties:
                                                                    cc:
                                                                        type: integer
                                                                        description: "International dialling code of the customer’s mobile telephone number"
                                                                        example: 34
                                                                    subscriber:
                                                                        type: integer
                                                                        description: "Customer’s mobile telephone number"
                                                                        example: 640456999
                                                            workPhone:
                                                                type: object
                                                                description: Node with user work phone data
                                                                properties:
                                                                    cc:
                                                                        type: integer
                                                                        description: "International dialling code of the customer’s work telephone number"
                                                                        example: 34
                                                                    subscriber:
                                                                        type: integer
                                                                        description: "Customer’s work telephone number"
                                                                        example: 913984300
                                                            firstBuy:
                                                                type: string
                                                                description: Indicates whether the user has already bought in this business ('si' if has made a operation, 'no' in opposite scenario)
                                                    shipping:
                                                        type: object
                                                        description: Node with shipping address related information.
                                                        properties:
                                                            shipAddrCity:
                                                                type: string
                                                                description: City of delivery address.
                                                                example: Springfield
                                                            shipAddrCountry:
                                                                type: string
                                                                description: Numerical code (ISO 3166-1) of the country of the delivery address
                                                                example: 840
                                                            shipAddrLine1:
                                                                type: string
                                                                description: Delivery address, line 1
                                                                example: 742 Evergreen Terrace
                                                            shipAddrLine2:
                                                                type: string
                                                                description: Delivery address, line 2
                                                            shipAddrLine3:
                                                                type: string
                                                                description: Delivery address, line 3
                                                            shipAddrPostCode:
                                                                type: string
                                                                description: Post code of the delivery address
                                                                example: 89011
                                                            shipAddrState:
                                                                type: string
                                                                description: State or province of the delivery address. Must comply with ISO 3166-2.
                                                                example: Z
                                                    billing:
                                                        type: object
                                                        properties:
                                                            billAddrCity:
                                                                type: string
                                                                description: City of delivery address.
                                                                example: Scranton
                                                            billAddrCountry:
                                                                type: string
                                                                description: Numerical code (ISO 3166-1) of the country of the delivery address
                                                                example: 840
                                                            billAddrLine1:
                                                                type: string
                                                                description: Delivery address, line 1
                                                                example: 1725 Slough Avenue
                                                            billAddrLine2:
                                                                type: string
                                                                description: Delivery address, line 2
                                                            billAddrLine3:
                                                                type: string
                                                                description: Delivery address, line 3
                                                            billAddrPostCode:
                                                                type: string
                                                                description: Post code of the delivery address
                                                                example: 18501
                                                            billAddrState:
                                                                type: string
                                                                description: State or province of the delivery address. Must comply with ISO 3166-2.
                                                                example: Z
                                                    acctID:
                                                        type: string
                                                        description: Additional information you want to send to identify the account
                                                    acctInfo:
                                                        type: object
                                                        description: Node with additional information on the user account at the store
                                                        properties:
                                                            chAccAgeInd:
                                                                type: string
                                                                description: "Period of time that the customer has had the account at the business. Possible values: 01 = No account (checkout as guest), 02 = Created in this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                                example: 05
                                                            chAccChange:
                                                                type: string
                                                                description: "Date on which the user account with the business was last modified, including the invoice or delivery address, the new payment account or new added users. Date format: YYYYMMDD"
                                                                example: 20200704
                                                            chAccChangeInd:
                                                                type: string
                                                                description: "Period of time passed since the payment user’s account with the business was last modified, including the invoice or delivery address, the new payment account or new added users. Accepted values: 01 = Modified in this transaction, 02 = Under 30 days, 03 = 30-60 days, 04 = Over 60 days"
                                                                example: 03
                                                            chAccDate:
                                                                type: string
                                                                description: "Date on which the payment user opened the account with the business. Date format: YYYYMMDD"
                                                                example: 20191225
                                                            chAccPwChange:
                                                                type: string
                                                                description: "Date on which the payment user changed the password of their account with the business, or reset their account. Date format: YYYYMMDD"
                                                                example: 20191225
                                                            chAccPwChangeInd:
                                                                type: string
                                                                description: "Indicates the period of time since the payment user’s account with the business changed its password or was reset. Accepted values: 01 = No changes, 02 = Changed during this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                                example: 01
                                                            nbPurchaseAccount:
                                                                type: integer
                                                                description: Number of purchases with this account during the last six months
                                                                example: 2
                                                            provisionAttemptsDay:
                                                                type: integer
                                                                description: Number of attempts to add a card in the last 24 hours
                                                                example: 0
                                                            txnActivityDay:
                                                                type: string
                                                                description: Number of transactions (successful and abandoned) for this account with the business in all payment accounts in the last 24 hours
                                                                example: 0
                                                            txnActivityYear:
                                                                type: string
                                                                description: Number of transactions (successful and abandoned) for this account of the payment user with the business in all payment accounts of the last year
                                                                example: 3
                                                            paymentAccAge:
                                                                type: string
                                                                description: Date on which the payment account was registered on the payment user’s account with the business.
                                                                example: 20191228
                                                            paymentAccInd:
                                                                type: string
                                                                description: "Indicates the period of time which the payment account was registered on the payment user’s account with the business. Accepted values: 01 = No account (checkout as guest), 02 = During this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                                example: 05
                                                            shipAddressUsage:
                                                                type: string
                                                                description: "Date on which the delivery address used for this transaction was used for the first time with the business. Date format: YYYYMMDD"
                                                                example: 20191228
                                                            shipAddressUsageInd:
                                                                type: string
                                                                description: "Indicates when the delivery address used for this transaction was used for the first time with the business. Accepted values: 01 = This transaction, 02 = Under 30 days, 03 = Between 30 and 60 days, 04 = Over 60 days"
                                                                example: 03
                                                            shipNameIndicator:
                                                                type: string
                                                                description: "Indicates whether the name of the payment user on the account is identical to the delivery name used for this transaction. Accepted values: 01 = Name on the account identical to the delivery name, 02 = Name on the account different from the delivery name"
                                                                example: 01
                                                            suspiciousAccActivity:
                                                                type: string
                                                                description: "Indicates whether the business has experienced suspicious activity (including previous fraud) on the payment user’s account. Accepted values: 01 = No record of suspicious activity, 02 = Record of suspicious activity"
                                                                example: 01
                                                    merchantRiskIndicator:
                                                        type: object
                                                        description: Node with additional information of the business representing the evaluation of the level of risk of fraud for authentication. The delivery of this information is highly recommended
                                                        properties:
                                                            deliveryEmailAddress:
                                                                type: string
                                                                description: For electronic delivery, the email address to which the goods were delivered
                                                                example: jdoe@myemail.com
                                                            deliveryTimeframe:
                                                                type: string
                                                                description: "Indicates the delivery period of the goods. Accepted values: 01 = Electronic delivery, 02 = Delivery on the same day, 03 = 24 hour delivery, 04 = Delivery in 2 days or more"
                                                                example: 04
                                                            giftCardAmount:
                                                                type: string
                                                                description: "For purchases from prepaid cards or gift cards, the total amount of the purchase in major units (for example, USD 123.45 is 123)"
                                                                example: 123
                                                            giftCardCount:
                                                                type: integer
                                                                description: "For purchases from prepaid cards or gift cards, total count of prepaid cards or gift cards/gift codes purchased"
                                                                example: 1
                                                            giftCardCurr:
                                                                type: string
                                                                description: "For the purchase of prepaid/gift cards, code ISO-4217 of currency of the card"
                                                                example: 840
                                                            preOrderDate:
                                                                type: string
                                                                description: "For a pre-ordered purchase, the forecast availability date of the goods. Date format: YYYYMMDD"
                                                                example: 20201001
                                                            preOrderPurchaseInd:
                                                                type: string
                                                                description: "Indicates whether the customer makes an order with availability or future launch date. Accepted values: 01 = Goods available, 02 = Future availability"
                                                                example: 01
                                                            reorderItemsInd:
                                                                type: string
                                                                description: "Indicates whether the card is reordering previously purchased goods. Accepted values: 01 = First time purchased, 02 = Previously purchased"
                                                                example: 01
                                                            shipIndicator:
                                                                type: string
                                                                description: "Indicates the delivery method selected for the transaction. Businesses must select the delivery indicator code which more precisely describes the specific transaction of the payment user, not their general commercial activity. If one or more items are included in the sale, use the delivery Indicator code for physical goods, or if all products are digital, use the delivery Indicator code which describes the most expensive item. Accepted values: 01 = Delivery to the invoice address of the customer, 02 = Delivery to another verified address of the client, 03 = Delivery to an address other than that of the customer’s invoice address, 04 = Delivery to the store or collection at premises (the address of the store will be stored in the delivery address fields), 05 = Digital goods (includes online services, electronic gift cards and discount coupons), 06 = Tickets for events and trips, without delivery, 07 = Other (for example, games, digital services without delivery, subscriptions to online services, etc.)"
                                                                example: 03
                                                    threeDSRequestorAuthenticationInfo:
                                                        type: object
                                                        description: Node with additional information on how the client was authenticated at the start of the session in the business account
                                                        properties:
                                                            threeDSReqAuthData:
                                                                type: string
                                                                description: Data which documents and supports a specific authentication process.
                                                            threeDSReqAuthMethod:
                                                                type: string
                                                                description: "Mechanism used by the customer to authenticate themselves in the business. Accepted values: 01 = Without 3DS authentication (for example, customer identified as guest), 02 = Logged onto the account on the ACS using the credentials of the ACS, 03 = Logged onto the account on the ACS using an affiliate identifier, 04 = Logged onto the account on the ACS using the credentials of the issuer, 05 = Logged onto the account on the ACS using a third party authentication, 06 = Logged onto the account on the ACS using a FIDO authenticator"
                                                                example: 01
                                                            threeDSReqAuthTimestamp:
                                                                type: string
                                                                description: "Date and time UTC of the authentication. Date format: YYYYMMDDHHMM"
                                                                example: 20200612113044
                                                    shoppingCart:
                                                        type: array
                                                        items:
                                                            type: object
                                                            description: Node with the list of items purchased in the store
                                                            properties:
                                                                sku:
                                                                    type: string
                                                                    description: Product identifier
                                                                    example: CODE-01
                                                                quantity:
                                                                    type: integer
                                                                    description: Units of product purchased
                                                                    example: 1
                                                                unitPrice:
                                                                    type: integer
                                                                    description: unit amount of each product in integer format. 1.00 EURO = 100, 4.50 EUROS = 450, etc.
                                                                    example: 295
                                                                name:
                                                                    type: string
                                                                    description: Product name
                                                                    example: Product 01
                                                                category:
                                                                    type: string
                                                                    description: Product category
                                                                    example: Internet gift card
                                                                articleType:
                                                                    type: integer
                                                                    description: article type (4 = Discount, 5 = Physical, 6 = Shipping_fee, 7 = Sales_tax, 8 = Digital, 9 = Gift_card, 10 = Store_credit, 11 = Surcharge)
                                                                    example: 8
                                                    addrMatch:
                                                        type: string
                                                        description: Indicates whether the delivery address is the same as the invoice address. Y = The delivery address is the same as the invoicing address, N = The delivery and invoice addresses are different
                                                        example: Y
                                                    purchaseInstalData:
                                                        type: integer
                                                        description: "Mandatory for Instalment operations (MERCHANT_TRX_TYPE = I). Indicates the maximum number of deferred payment authorizations. Accepted values: The value must be greater than 1"
                                                    recurringExpiry:
                                                        type: string
                                                        description: "Mandatory for Recurring and Instalment operations (MERCHANT_TRX_TYPE = I or R). The date from which there will be no more authorizations. Accepted format: YYYYMMDD"
                                                        example: 20200612
                                                    recurringFrequency:
                                                        type: string
                                                        description: Mandatory for Recurring and Instalment operations (MERCHANT_TRX_TYPE = I or R). Indicates the minimum number of days between authorizations
                                                        example: 4m
                                            history:
                                                type: array
                                                items:
                                                    type: object
                                                    description: 'Log of operations'
                                                    properties:
                                                        paycometId:
                                                            type: integer
                                                            example: 123456789
                                                            description: PAYCOMET identifier
                                                        operationId:
                                                            type: integer
                                                            example: 123456789
                                                            description: Bank Reference Identifier
                                                        methodId:
                                                            type: integer
                                                            example: 1
                                                            description: PAYCOMET payment method ID. 1 is for card.
                                                        timestamp:
                                                            type: string
                                                            example: "20200318091130"
                                                            description: Timestamp of transaction
                                                        settlementDate:
                                                            type: string
                                                            example: "20200318091210"
                                                            description: Settlement date of transaction
                                                        order:
                                                            type: string
                                                            example: "PAY123456789"
                                                            description: "Unique reference for merchant's purchase"
                                                        operationType:
                                                            type: integer
                                                            example: "1"
                                                            description: PAYCOMET operation type ID.
                                                        operationName:
                                                            type: string
                                                            example: "Autorización"
                                                            description: PAYCOMET operation type description.
                                                        state:
                                                            type: integer
                                                            description: Identifier of the state of the operation. 0 means operation failed, 1 operation correct, 2 operation unfinished (pending payment).
                                                            example: 1
                                                        stateName:
                                                            type: string
                                                            description: Literal of the state of the operation.
                                                            example: "Completado"
                                                        response:
                                                            type: string
                                                            example: "OK"
                                                            description: Status of transation. OK, KO o UF (pending payment).
                                                        terminal:
                                                            type: integer
                                                            description: Product or terminal Id.
                                                        terminalName:
                                                            type: string
                                                            description: Customer product name
                                                            example: "PAYCOMET SANDBOX Terminal"
                                                        user:
                                                            type: string
                                                            example: "johndoe@paycomet.com"
                                                            description: Administrative user of the operation
                                                        amount:
                                                            type: string
                                                            example: "203"
                                                            description: 'Amount of the operation in number format. 1.00 EURO = 100, 4.50 EUROS = 450...'
                                                        currency:
                                                            type: string
                                                            example: "EUR"
                                                            description: 'Currency of the transaction. '
                                                        amountDisplay:
                                                            type: string
                                                            example: "20,00 €"
                                                            description: 'Literal of the operation amount (with currency symbol)'
                                                        errorCode:
                                                            type: integer
                                                            example: 0
                                                            description: Error code given by PAYCOMET.
                                                        errorDescription:
                                                            type: string
                                                            example: "Sin error"
                                                            description: PAYCOMET operation type description.
                                                        feeEuro:
                                                            type: number
                                                            example: "0,02"
                                                            description: 'PAYCOMET fee for the transaction fixed per operation (in euros)'
                                                        feePercent:
                                                            type: number
                                                            example: "0,01"
                                                            description: 'PAYCOMET fee for the transaction variable per operation (in euros)'
                                                        originalIp:
                                                            type: string
                                                            example: "172.17.0.5"
                                                            description: IP Address of the customer that initiated the payment transaction
                                                        pan:
                                                            type: string
                                                            example: "491801******4602"
                                                            description: Masked credit/debit card
                                                        scoring:
                                                            type: string
                                                            example: 0
                                                            description: Risk scoring value from 0 to 100.
                                                        merchantBank:
                                                            type: string
                                                            example: "BANCO SABADELL"
                                                            description: Bank of merchant terminal.
                                                        bicCode:
                                                            type: string
                                                            example: "BSABESBBXXX"
                                                            description: Biccode of the entity by which the transaction was processed.
                                                        productDescription:
                                                            type: string
                                                            example: "Random product"
                                                            description: Description of the product sold.
                                                        cardType:
                                                            type: string
                                                            example: "CREDIT"
                                                            description: 'Type of card. If it can be identified, information on the type of card will be sent (DEBIT, CREDIT, etc). Otherwise, the field will be returned blank.'
                                                        cardCategory:
                                                            type: string
                                                            example: "CLASSIC"
                                                            description: 'Category of card. If it can be identified, information on the category of card will be sent. Otherwise, the field will be returned blank.'
                                                        cardBrand:
                                                            type: string
                                                            example: "VISA"
                                                            description: 'Brand of card. If it can be identified, information on the brand of card will be sent. Otherwise, the field will be returned blank.'
                                                        cardCountry:
                                                            type: string
                                                            example: "ES"
                                                            description: 'Country of the issuer of the card in ISO3 Code (ex.: 724 = Spain). May be left empty.'
                                                        secure:
                                                            type: string
                                                            example: 1
                                                            description: 0 or 1. Indicates if the transaction is secure.
                                                        splitId:
                                                            type: integer
                                                            example: 123
                                                            description: Split identifier in some operations
                                                        issuerBank:
                                                            type: string
                                                            example: "SERVIRED SOCIEDAD ESPANOLA DE MEDIOS DE PAGO, S.A."
                                                            description: Bank of the card
                                                        authCode:
                                                            type: string
                                                            example: "492541"
                                                            description: Authorization bank code of the transaction (required to execute a return).
                            examples:
                                example-1: {}
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            operationId: operationInfo
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                payment:
                                    type: object
                                    properties:
                                        terminal:
                                            type: integer
                                            description: Product or terminal Id.
                                    required:
                                        - order
                                        - terminal
                description: ''
            description: operation_info
        parameters:
            - schema:
                  type: string
              name: order
              in: path
              required: true
            - name: PAYCOMET-API-TOKEN
              in: header
              required: true
              description: PAYCOMET API key (Query privilege required)
              schema:
                  type: string
                  example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/payments/search:
        post:
            summary: Search orders
            tags:
                - payments
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                    operations:
                                        type: array
                                        items:
                                            type: object
                                            properties:
                                                paycometId:
                                                    type: integer
                                                    example: 123456789
                                                    description: PAYCOMET identifier
                                                operationId:
                                                    type: integer
                                                    example: 123456789
                                                    description: Bank Reference Identifier
                                                methodId:
                                                    type: integer
                                                    example: 1
                                                    description: PAYCOMET payment method ID. 1 is for card.
                                                timestamp:
                                                    type: string
                                                    example: "20200318091130"
                                                    description: Timestamp of transaction
                                                settlementDate:
                                                    type: string
                                                    example: "20200318091210"
                                                    description: Settlement date of transaction
                                                order:
                                                    type: string
                                                    example: "PAY123456789"
                                                    description: "Unique reference for merchant's purchase"
                                                operationType:
                                                    type: integer
                                                    example: "1"
                                                    description: PAYCOMET operation type ID.
                                                operationName:
                                                    type: string
                                                    example: "Autorización"
                                                    description: PAYCOMET operation type description.
                                                state:
                                                    type: integer
                                                    description: Identifier of the state of the operation. 0 means operation failed, 1 operation correct, 2 operation unfinished (pending payment).
                                                    example: 1
                                                stateName:
                                                    type: string
                                                    description: Literal of the state of the operation.
                                                    example: "Completado"
                                                response:
                                                    type: string
                                                    example: "OK"
                                                    description: Status of transation. OK, KO o UF (pending payment).
                                                terminal:
                                                    type: integer
                                                    description: Product or terminal Id.
                                                terminalName:
                                                    type: string
                                                    description: Customer product name
                                                    example: "PAYCOMET SANDBOX Terminal"
                                                user:
                                                    type: string
                                                    example: "johndoe@paycomet.com"
                                                    description: Administrative user of the operation
                                                amount:
                                                    type: string
                                                    example: "203"
                                                    description: 'Amount of the operation in number format. 1.00 EURO = 100, 4.50 EUROS = 450...'
                                                currency:
                                                    type: string
                                                    example: "EUR"
                                                    description: 'Currency of the transaction. '
                                                amountDisplay:
                                                    type: string
                                                    example: "20,00 €"
                                                    description: 'Literal of the operation amount (with currency symbol)'
                                                errorCode:
                                                    type: integer
                                                    example: 0
                                                    description: Error code given by PAYCOMET.
                                                errorDescription:
                                                    type: string
                                                    example: "Sin error"
                                                    description: PAYCOMET operation type description.
                                                feeEuro:
                                                    type: number
                                                    example: "0,02"
                                                    description: 'PAYCOMET fee for the transaction fixed per operation (in euros)'
                                                feePercent:
                                                    type: number
                                                    example: "0,01"
                                                    description: 'PAYCOMET fee for the transaction variable per operation (in euros)'
                                                originalIp:
                                                    type: string
                                                    example: "172.17.0.5"
                                                    description: IP Address of the customer that initiated the payment transaction
                                                pan:
                                                    type: string
                                                    example: "491801******4602"
                                                    description: Masked credit/debit card
                                                scoring:
                                                    type: string
                                                    example: 0
                                                    description: Risk scoring value from 0 to 100.
                                                merchantBank:
                                                    type: string
                                                    example: "BANCO SABADELL"
                                                    description: Bank of merchant terminal.
                                                bicCode:
                                                    type: string
                                                    example: "BSABESBBXXX"
                                                    description: Biccode of the entity by which the transaction was processed.
                                                productDescription:
                                                    type: string
                                                    example: "Random product"
                                                    description: Description of the product sold.
                                                cardType:
                                                    type: string
                                                    example: "CREDIT"
                                                    description: 'Type of card. If it can be identified, information on the type of card will be sent (DEBIT, CREDIT, etc). Otherwise, the field will be returned blank.'
                                                cardCategory:
                                                    type: string
                                                    example: "CLASSIC"
                                                    description: 'Category of card. If it can be identified, information on the category of card will be sent. Otherwise, the field will be returned blank.'
                                                cardBrand:
                                                    type: string
                                                    example: "VISA"
                                                    description: 'Brand of card. If it can be identified, information on the brand of card will be sent. Otherwise, the field will be returned blank.'
                                                cardCountry:
                                                    type: string
                                                    example: "ES"
                                                    description: 'Country of the issuer of the card in ISO3 Code (ex.: 724 = Spain). May be left empty.'
                                                secure:
                                                    type: string
                                                    example: 1
                                                    description: 0 or 1. Indicates if the transaction is secure.
                                                splitId:
                                                    type: integer
                                                    example: 123
                                                    description: Split identifier in some operations
                                                issuerBank:
                                                    type: string
                                                    example: "SERVIRED SOCIEDAD ESPANOLA DE MEDIOS DE PAGO, S.A."
                                                    description: Bank of the card
                                                authCode:
                                                    type: string
                                                    example: "492541"
                                                    description: Authorization bank code of the transaction (required to execute a return).
                            examples:
                                example-1: {}
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            operationId: operationSearch
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                                    description: Product or terminal Id.
                                sortType:
                                    type: integer
                                    example: 0
                                    description: Sorting type (0 No sorting, 1 date, 2 order, 3 type, 4 state, 5 terminal, 6 amount, 7 user).
                                sortOrder:
                                    type: string
                                    example: "ASC"
                                    description: Sort results ASC = Ascending, DESC = Descending.
                                operations:
                                    type: array
                                    items:
                                        type: integer
                                        example: 1
                                        description: PAYCOMET operation types (1 - Authorization, 3 - Preauthorization, etc...)
                                minAmount:
                                    type: integer
                                    example: 1000
                                    description: Minimum amount of the operation in whole format
                                maxAmount:
                                    type: integer
                                    example: 2000
                                    description: Maximum amount of the operation in whole format
                                state:
                                    type: integer
                                    example: 1
                                    description: Result of operation. 0 is operation failed, 1 operation correct and 2 operation unfinished (for pending operations from an SCA or 3DS).
                                fromDate:
                                    type: string
                                    example: "20200507020000"
                                    description: 'Start datetime limit (format: YmdHis)'
                                toDate:
                                    type: string
                                    example: "20200508000000"
                                    description: 'Finish datetime limit (format: YmdHis)'
                                currency:
                                    type: string
                                    example: "EUR"
                                    description: 'Currency of the transaction. '
                                limit:
                                    type: integer
                                    example: 20
                                    default: 10000
                                    description: Results limit.
                                order:
                                    type: string
                                    example: "PAY123456789"
                                    description: "Unique reference for merchant's purchase"
                                searchType:
                                    type: integer
                                    example: 1
                                    description: Comparison type. 0 LIKE comparison (%xxx%) , 1 exact comparison (=)
                            required:
                                - terminal
                                - sortType
                                - sortOrder
                                - operations
                                - minAmount
                                - maxAmount
                                - state
                                - fromDate
                                - toDate
                                - currency
                description: ''
            description: operation_search
        parameters:
            - name: PAYCOMET-API-TOKEN
              in: header
              required: true
              description: PAYCOMET API key (Query privilege required)
              schema:
                  type: string
                  example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/payments/preauth:
        post:
            summary: Create preauthorization
            tags:
                - preauthorizations
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                    amount:
                                        type: string
                                        example: "202"
                                    currency:
                                        type: string
                                        example: "EUR"
                                    methodId:
                                        type: integer
                                        example: 1
                                    order:
                                        type: string
                                        example: "PAY17123301"
                                    authCode:
                                        type: string
                                        example: "AC410397"
                                    challengeUrl:
                                        type: string
                                        example: "https://challenge.paycomet.com/challenge"
                                    idUser:
                                        type: integer
                                        example: 12345678
                                    tokenUser:
                                        type: string
                                        example: "V1c1K1drRk9Ta1l"
                                    cardCountry:
                                        type: string
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                language:
                                    type: string
                                    description: ISO2 code of language.
                                    default: 'es'
                                    example: 'en'
                                payment:
                                    type: object
                                    properties:
                                        terminal:
                                            type: integer
                                            description: Product or terminal Id.
                                        order:
                                            type: string
                                            example: "PAY987654321"
                                            description: "Unique reference for merchant's purchase"
                                        amount:
                                            type: string
                                            example: "202"
                                            description: 'Amount of the operation in number format. 1.00 EURO = 100, 4.50 EUROS = 450...'
                                        currency:
                                            type: string
                                            example: "EUR"
                                            description: 'Currency of the transaction. '
                                        originalIp:
                                            type: string
                                            example: "127.0.0.1"
                                            description: IP Address of the customer that initiated the payment transaction
                                        methodId:
                                            type: string
                                            example: 1
                                            description: PAYCOMET payment method ID. 1 is for card.
                                        secure:
                                            type: integer
                                            example: 1
                                            description: 0 or 1. Indicates if the transaction is secure.
                                        scoring:
                                            type: string
                                            example: "0"
                                            description: Risk scoring value from 0 to 100.
                                        productDescription:
                                            type: string
                                            example: "Description of random product"
                                            description: Description of the product sold.
                                        merchantDescriptor:
                                            type: string
                                            example: "My custom name"
                                            description: 'Allows the business to send a text up to 25 characters that will be printed on the customer invoice. Limited to simple characters, no accents or special characters.'
                                        userInteraction:
                                            type: integer
                                            example: 1
                                            description: Indicates wether the business can interact with the customer
                                        # escrowTargets:
                                        #   type: array
                                        #   items:
                                        #     type: object
                                        #     description: Optional Identification of the recipients of receipts in ESCROW operations
                                        #     properties:
                                        #       id:
                                        #         type: string
                                        #         description: Recipient identifier
                                        #         example: 123
                                        #       amount:
                                        #         type: integer
                                        #         description: "Recipient' amount in number format. 1.00 EURO = 100, 4.50 EUROS = 450..."
                                        #         example: 100
                                        TRXType:
                                            type: string
                                            description: Obligatory only if an MIT exception has been selected in scaException
                                        scaException:
                                            type: string
                                            description: 'TYPE OF EXCEPTION TO THE SECURE PAYMENT. If not specified, PAYCOMET will try to assign it the most appropriate possible'
                                        urlOk:
                                            type: string
                                            example: "https://www.mycustom.url/ok"
                                            description: Url where the customer will be redirected after finishing a correct transaction. (Max 255 characters)
                                        urlKo:
                                            type: string
                                            example: "https://www.mycustom.url/ko"
                                            description: Url where the customer will be redirected after finishing a failed transaction. (Max 255 characters)
                                        notifyDirectPayment:
                                            type: integer
                                            description: "Configurate POST notification of the operation result in frictionless payment (possible values: 1 - force notify, 2 - not notify). It will notify if is not informed"
                                            example: 1
                                        merchantData:
                                            type: object
                                            description: 'Client authentication information. The more information is provided in this field, the more likely the authorization of the operation will be without requiring additional authentication. For this reason, it is recommended to send as much information as possible.'
                                            properties:
                                                customer:
                                                    type: object
                                                    properties:
                                                        id:
                                                            type: string
                                                            description: Store customer identifier
                                                            example: "customer123"
                                                        name:
                                                            type: string
                                                            description: Name of customer
                                                            example: John
                                                        surname:
                                                            type: string
                                                            description: Surname of customer
                                                            example: Doe
                                                        email:
                                                            type: string
                                                            description: Email of customer
                                                            example: jdoe@myemail.com
                                                        homePhone:
                                                            type: object
                                                            description: Node with user home phone data
                                                            properties:
                                                                cc:
                                                                    type: integer
                                                                    description: "International dialling code of the customer’s home telephone number"
                                                                    example: 34
                                                                subscriber:
                                                                    type: integer
                                                                    description: "Customer’s home telephone number"
                                                                    example: 91820332211
                                                        mobilePhone:
                                                            type: object
                                                            description: Node with user mobile phone data
                                                            properties:
                                                                cc:
                                                                    type: integer
                                                                    description: "International dialling code of the customer’s mobile telephone number"
                                                                    example: 34
                                                                subscriber:
                                                                    type: integer
                                                                    description: "Customer’s mobile telephone number"
                                                                    example: 640456999
                                                        workPhone:
                                                            type: object
                                                            description: Node with user work phone data
                                                            properties:
                                                                cc:
                                                                    type: integer
                                                                    description: "International dialling code of the customer’s work telephone number"
                                                                    example: 34
                                                                subscriber:
                                                                    type: integer
                                                                    description: "Customer’s work telephone number"
                                                                    example: 913984300
                                                        firstBuy:
                                                            type: string
                                                            description: Indicates whether the user has already bought in this business ('si' if has made a operation, 'no' in opposite scenario)
                                                shipping:
                                                    type: object
                                                    description: Node with shipping address related information.
                                                    properties:
                                                        shipAddrCity:
                                                            type: string
                                                            description: City of delivery address.
                                                            example: Springfield
                                                        shipAddrCountry:
                                                            type: string
                                                            description: Numerical code (ISO 3166-1) of the country of the delivery address
                                                            example: 840
                                                        shipAddrLine1:
                                                            type: string
                                                            description: Delivery address, line 1
                                                            example: 742 Evergreen Terrace
                                                        shipAddrLine2:
                                                            type: string
                                                            description: Delivery address, line 2
                                                        shipAddrLine3:
                                                            type: string
                                                            description: Delivery address, line 3
                                                        shipAddrPostCode:
                                                            type: string
                                                            description: Post code of the delivery address
                                                            example: 89011
                                                        shipAddrState:
                                                            type: string
                                                            description: State or province of the delivery address. Must comply with ISO 3166-2.
                                                            example: Z
                                                billing:
                                                    type: object
                                                    properties:
                                                        billAddrCity:
                                                            type: string
                                                            description: City of delivery address.
                                                            example: Scranton
                                                        billAddrCountry:
                                                            type: string
                                                            description: Numerical code (ISO 3166-1) of the country of the delivery address
                                                            example: 840
                                                        billAddrLine1:
                                                            type: string
                                                            description: Delivery address, line 1
                                                            example: 1725 Slough Avenue
                                                        billAddrLine2:
                                                            type: string
                                                            description: Delivery address, line 2
                                                        billAddrLine3:
                                                            type: string
                                                            description: Delivery address, line 3
                                                        billAddrPostCode:
                                                            type: string
                                                            description: Post code of the delivery address
                                                            example: 18501
                                                        billAddrState:
                                                            type: string
                                                            description: State or province of the delivery address. Must comply with ISO 3166-2.
                                                            example: Z
                                                acctID:
                                                    type: string
                                                    description: Additional information you want to send to identify the account
                                                acctInfo:
                                                    type: object
                                                    description: Node with additional information on the user account at the store
                                                    properties:
                                                        chAccAgeInd:
                                                            type: string
                                                            description: "Period of time that the customer has had the account at the business. Possible values: 01 = No account (checkout as guest), 02 = Created in this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                            example: 05
                                                        chAccChange:
                                                            type: string
                                                            description: "Date on which the user account with the business was last modified, including the invoice or delivery address, the new payment account or new added users. Date format: YYYYMMDD"
                                                            example: 20200704
                                                        chAccChangeInd:
                                                            type: string
                                                            description: "Period of time passed since the payment user’s account with the business was last modified, including the invoice or delivery address, the new payment account or new added users. Accepted values: 01 = Modified in this transaction, 02 = Under 30 days, 03 = 30-60 days, 04 = Over 60 days"
                                                            example: 03
                                                        chAccDate:
                                                            type: string
                                                            description: "Date on which the payment user opened the account with the business. Date format: YYYYMMDD"
                                                            example: 20191225
                                                        chAccPwChange:
                                                            type: string
                                                            description: "Date on which the payment user changed the password of their account with the business, or reset their account. Date format: YYYYMMDD"
                                                            example: 20191225
                                                        chAccPwChangeInd:
                                                            type: string
                                                            description: "Indicates the period of time since the payment user’s account with the business changed its password or was reset. Accepted values: 01 = No changes, 02 = Changed during this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                            example: 01
                                                        nbPurchaseAccount:
                                                            type: integer
                                                            description: Number of purchases with this account during the last six months
                                                            example: 2
                                                        provisionAttemptsDay:
                                                            type: integer
                                                            description: Number of attempts to add a card in the last 24 hours
                                                            example: 0
                                                        txnActivityDay:
                                                            type: string
                                                            description: Number of transactions (successful and abandoned) for this account with the business in all payment accounts in the last 24 hours
                                                            example: 0
                                                        txnActivityYear:
                                                            type: string
                                                            description: Number of transactions (successful and abandoned) for this account of the payment user with the business in all payment accounts of the last year
                                                            example: 3
                                                        paymentAccAge:
                                                            type: string
                                                            description: Date on which the payment account was registered on the payment user’s account with the business.
                                                            example: 20191228
                                                        paymentAccInd:
                                                            type: string
                                                            description: "Indicates the period of time which the payment account was registered on the payment user’s account with the business. Accepted values: 01 = No account (checkout as guest), 02 = During this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                            example: 05
                                                        shipAddressUsage:
                                                            type: string
                                                            description: "Date on which the delivery address used for this transaction was used for the first time with the business. Date format: YYYYMMDD"
                                                            example: 20191228
                                                        shipAddressUsageInd:
                                                            type: string
                                                            description: "Indicates when the delivery address used for this transaction was used for the first time with the business. Accepted values: 01 = This transaction, 02 = Under 30 days, 03 = Between 30 and 60 days, 04 = Over 60 days"
                                                            example: 03
                                                        shipNameIndicator:
                                                            type: string
                                                            description: "Indicates whether the name of the payment user on the account is identical to the delivery name used for this transaction. Accepted values: 01 = Name on the account identical to the delivery name, 02 = Name on the account different from the delivery name"
                                                            example: 01
                                                        suspiciousAccActivity:
                                                            type: string
                                                            description: "Indicates whether the business has experienced suspicious activity (including previous fraud) on the payment user’s account. Accepted values: 01 = No record of suspicious activity, 02 = Record of suspicious activity"
                                                            example: 01
                                                merchantRiskIndicator:
                                                    type: object
                                                    description: Node with additional information of the business representing the evaluation of the level of risk of fraud for authentication. The delivery of this information is highly recommended
                                                    properties:
                                                        deliveryEmailAddress:
                                                            type: string
                                                            description: For electronic delivery, the email address to which the goods were delivered
                                                            example: jdoe@myemail.com
                                                        deliveryTimeframe:
                                                            type: string
                                                            description: "Indicates the delivery period of the goods. Accepted values: 01 = Electronic delivery, 02 = Delivery on the same day, 03 = 24 hour delivery, 04 = Delivery in 2 days or more"
                                                            example: 04
                                                        giftCardAmount:
                                                            type: string
                                                            description: "For purchases from prepaid cards or gift cards, the total amount of the purchase in major units (for example, USD 123.45 is 123)"
                                                            example: 123
                                                        giftCardCount:
                                                            type: integer
                                                            description: "For purchases from prepaid cards or gift cards, total count of prepaid cards or gift cards/gift codes purchased"
                                                            example: 1
                                                        giftCardCurr:
                                                            type: string
                                                            description: "For the purchase of prepaid/gift cards, code ISO-4217 of currency of the card"
                                                            example: 840
                                                        preOrderDate:
                                                            type: string
                                                            description: "For a pre-ordered purchase, the forecast availability date of the goods. Date format: YYYYMMDD"
                                                            example: 20201001
                                                        preOrderPurchaseInd:
                                                            type: string
                                                            description: "Indicates whether the customer makes an order with availability or future launch date. Accepted values: 01 = Goods available, 02 = Future availability"
                                                            example: 01
                                                        reorderItemsInd:
                                                            type: string
                                                            description: "Indicates whether the card is reordering previously purchased goods. Accepted values: 01 = First time purchased, 02 = Previously purchased"
                                                            example: 01
                                                        shipIndicator:
                                                            type: string
                                                            description: "Indicates the delivery method selected for the transaction. Businesses must select the delivery indicator code which more precisely describes the specific transaction of the payment user, not their general commercial activity. If one or more items are included in the sale, use the delivery Indicator code for physical goods, or if all products are digital, use the delivery Indicator code which describes the most expensive item. Accepted values: 01 = Delivery to the invoice address of the customer, 02 = Delivery to another verified address of the client, 03 = Delivery to an address other than that of the customer’s invoice address, 04 = Delivery to the store or collection at premises (the address of the store will be stored in the delivery address fields), 05 = Digital goods (includes online services, electronic gift cards and discount coupons), 06 = Tickets for events and trips, without delivery, 07 = Other (for example, games, digital services without delivery, subscriptions to online services, etc.)"
                                                            example: 03
                                                threeDSRequestorAuthenticationInfo:
                                                    type: object
                                                    description: Node with additional information on how the client was authenticated at the start of the session in the business account
                                                    properties:
                                                        threeDSReqAuthData:
                                                            type: string
                                                            description: Data which documents and supports a specific authentication process.
                                                        threeDSReqAuthMethod:
                                                            type: string
                                                            description: "Mechanism used by the customer to authenticate themselves in the business. Accepted values: 01 = Without 3DS authentication (for example, customer identified as guest), 02 = Logged onto the account on the ACS using the credentials of the ACS, 03 = Logged onto the account on the ACS using an affiliate identifier, 04 = Logged onto the account on the ACS using the credentials of the issuer, 05 = Logged onto the account on the ACS using a third party authentication, 06 = Logged onto the account on the ACS using a FIDO authenticator"
                                                            example: 01
                                                        threeDSReqAuthTimestamp:
                                                            type: string
                                                            description: "Date and time UTC of the authentication. Date format: YYYYMMDDHHMM"
                                                            example: 20200612113044
                                                shoppingCart:
                                                    type: array
                                                    items:
                                                        type: object
                                                        description: Node with the list of items purchased in the store
                                                        properties:
                                                            sku:
                                                                type: string
                                                                description: Product identifier
                                                                example: CODE-01
                                                            quantity:
                                                                type: integer
                                                                description: Units of product purchased
                                                                example: 1
                                                            unitPrice:
                                                                type: integer
                                                                description: unit amount of each product in integer format. 1.00 EURO = 100, 4.50 EUROS = 450, etc.
                                                                example: 295
                                                            name:
                                                                type: string
                                                                description: Product name
                                                                example: Product 01
                                                            category:
                                                                type: string
                                                                description: Product category
                                                                example: Internet gift card
                                                            articleType:
                                                                type: integer
                                                                description: article type (4 = Discount, 5 = Physical, 6 = Shipping_fee, 7 = Sales_tax, 8 = Digital, 9 = Gift_card, 10 = Store_credit, 11 = Surcharge)
                                                                example: 8
                                                addrMatch:
                                                    type: string
                                                    description: Indicates whether the delivery address is the same as the invoice address. Y = The delivery address is the same as the invoicing address, N = The delivery and invoice addresses are different
                                                    example: Y
                                                purchaseInstalData:
                                                    type: integer
                                                    description: "Mandatory for Instalment operations (MERCHANT_TRX_TYPE = I). Indicates the maximum number of deferred payment authorizations. Accepted values: The value must be greater than 1"
                                                recurringExpiry:
                                                    type: string
                                                    description: "Mandatory for Recurring and Instalment operations (MERCHANT_TRX_TYPE = I or R). The date from which there will be no more authorizations. Accepted format: YYYYMMDD"
                                                    example: 20200612
                                                recurringFrequency:
                                                    type: string
                                                    description: Mandatory for Recurring and Instalment operations (MERCHANT_TRX_TYPE = I or R). Indicates the minimum number of days between authorizations
                                                    example: 4
                                        idUser:
                                            type: integer
                                            example: 12345678
                                            description: Identification of user card given by PAYCOMET. Mandatory if is a card payment.
                                        tokenUser:
                                            type: string
                                            example: "WHlSWmVDdzVQeUZ"
                                            description: Identification of user card given by PAYCOMET. Mandatory if is a card payment.
                                        deferred:
                                            type: integer
                                            example: 0
                                            default: 0
                                            description: Identify the preauthorization as deferred
                                    required:
                                        - order
                                        - amount
                                        - currency
                                        - originalIp
                                        - methodId
                                        - terminal
                                        - secure
                                        - idUser
                                        - tokenUser
                description: ''
            operationId: createPreauthorization
            description: create_preauthorization
        parameters:
            - name: PAYCOMET-API-TOKEN
              in: header
              required: true
              description: PAYCOMET API key (Preauthorization privilege required)
              schema:
                  type: string
                  example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/payments/{order}/preauth/cancel:
        post:
            summary: Cancel previous preauthorization
            tags:
                - preauthorizations
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    currency:
                                        type: string
                                        example: "EUR"
                                    order:
                                        type: string
                                        example: "PAY17123301"
                                    amount:
                                        type: string
                                        example: "202"
                                    errorCode:
                                        type: integer
                                        example: 0
                                    cardCountry:
                                        type: string
                                        example: "ESP"

                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                payment:
                                    type: object
                                    properties:
                                        terminal:
                                            type: integer
                                            description: Product or terminal Id.
                                        amount:
                                            type: string
                                            example: "202"
                                        originalIp:
                                            type: string
                                            example: "127.0.0.1"
                                        authCode:
                                            type: string
                                            description: Authorization bank code of the transaction (required to execute a return).
                                        deferred:
                                            type: integer
                                            example: 0
                                            default: 0
                                            description: Identify the preauthorization as deferred
                                        notifyDirectPayment:
                                            type: integer
                                            description: "Configurate POST notification of the operation result (possible values: 1 - force notify, 2 - not notify). It will notify if is not informed"
                                            example: 1
                                    required:
                                        - terminal
                                        - amount
                                        - originalIp
                                        - authCode
                description: ''
            operationId: cancelPreauthorization
            description: cancel_preauthorization
        parameters:
            - schema:
                  type: string
              name: order
              in: path
              required: true
            - name: PAYCOMET-API-TOKEN
              in: header
              required: true
              description: PAYCOMET API key (Preauthorization privilege required)
              schema:
                  type: string
                  example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/payments/{order}/preauth/confirm:
        post:
            summary: Confirm previous preauthorization
            tags:
                - preauthorizations
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    currency:
                                        type: string
                                        example: "EUR"
                                    order:
                                        type: string
                                        example: "PAY17123301"
                                    amount:
                                        type: string
                                        example: "202"
                                    authCode:
                                        type: string
                                        example: "9878271"
                                        description: Authorization bank code of the transaction (required to execute a return).
                                    errorCode:
                                        type: integer
                                        example: 0

                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                payment:
                                    type: object
                                    properties:
                                        terminal:
                                            type: integer
                                            description: Product or terminal Id.
                                        amount:
                                            type: string
                                            example: "202"
                                        originalIp:
                                            type: string
                                        authCode:
                                            type: string
                                            example: "AC410397"
                                            description: Authorization bank code of the transaction (required to execute a return).
                                        deferred:
                                            type: integer
                                            example: 0
                                            default: 0
                                            description: Identify the preauthorization as deferred
                                        notifyDirectPayment:
                                            type: integer
                                            description: "Configurate POST notification of the operation result (possible values: 1 - force notify, 2 - not notify). It will notify if is not informed"
                                            example: 1
                                    required:
                                        - terminal
                                        - amount
                                        - originalIp
                                        - authCode
                description: ''
            operationId: confirmPreauthorization
            description: confirm_preauthorization
        parameters:
            - schema:
                  type: string
              name: order
              in: path
              required: true
            - name: PAYCOMET-API-TOKEN
              in: header
              required: true
              description: PAYCOMET API key (Preauthorization privilege required)
              schema:
                  type: string
                  example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/payments/rtoken:
        post:
            summary: Executes a payment by refence
            tags:
                - payments
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                    amount:
                                        type: string
                                        example: "202"
                                    currency:
                                        type: string
                                        example: "EUR"
                                    methodId:
                                        type: integer
                                        example: 1
                                    order:
                                        type: string
                                        example: "PAY17123301"
                                    authCode:
                                        type: string
                                        example: "AC410397"
                                    challengeUrl:
                                        type: string
                                        example: "https://challenge.paycomet.com/challenge"
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            operationId: executePurchaseRtoken
            security:
                - paycometApiKey: []
            description: 'Generate a purchase with reference. It will confirms a charge or send a challenge URL to the commerce.'
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                language:
                                    type: string
                                    description: ISO2 code of language.
                                    default: 'es'
                                    example: 'en'
                                payment:
                                    type: object
                                    properties:
                                        terminal:
                                            type: integer
                                            description: Product or terminal Id.
                                        order:
                                            type: string
                                            example: "PAY987654321"
                                            description: "Unique reference for merchant's purchase"
                                        amount:
                                            type: string
                                            example: "202"
                                            description: 'Amount of the operation in number format. 1.00 EURO = 100, 4.50 EUROS = 450...'
                                        currency:
                                            type: string
                                            example: "EUR"
                                            description: 'Currency of the transaction. '
                                        methodId:
                                            type: string
                                            example: 1
                                            description: PAYCOMET payment method ID. 1 is for card.
                                        originalIp:
                                            type: string
                                            example: "127.0.0.1"
                                            description: IP Address of the customer that initiated the payment transaction
                                        secure:
                                            type: integer
                                            example: 1
                                            description: 0 or 1. Indicates if the transaction is secure.
                                        merchantIdentifier:
                                            type: string
                                            example: "520adffce7d9f5ea6bea5b03b837fd3f29817ef7"
                                            description: External reference of card
                                        merchantGroup:
                                            type: string
                                            example: "WHlSWmVDdzVQeUZ"
                                            description: Identification of external merchant group
                                        scoring:
                                            type: string
                                            description: Risk scoring value from 0 to 100.
                                        productDescription:
                                            type: string
                                            example: "Random product"
                                            description: Description of the product sold.
                                        merchantDescriptor:
                                            type: string
                                            description: 'Allows the business to send a text up to 25 characters that will be printed on the customer invoice. Limited to simple characters, no accents or special characters.'
                                        userInteraction:
                                            type: integer
                                            example: 1
                                            description: Indicates wether the business can interact with the customer
                                        # escrowTargets:
                                        #   type: array
                                        #   items:
                                        #     type: object
                                        #     description: Optional Identification of the recipients of receipts in ESCROW operations
                                        #     properties:
                                        #       id:
                                        #         type: string
                                        #         description: Recipient identifier
                                        #         example: 123
                                        #       amount:
                                        #         type: integer
                                        #         description: "Recipient' amount in number format. 1.00 EURO = 100, 4.50 EUROS = 450..."
                                        #         example: 100
                                        trxType:
                                            type: string
                                            description: Obligatory only if an MIT exception has been selected in scaException
                                        scaException:
                                            type: string
                                            description: 'TYPE OF EXCEPTION TO THE SECURE PAYMENT. If not specified, PAYCOMET will try to assign it the most appropriate possible'
                                        urlOk:
                                            type: string
                                            example: "https://www.mycustom.url/ok"
                                            description: Url where the customer will be redirected after finishing a correct transaction. (Max 255 characters)
                                        urlKo:
                                            type: string
                                            example: "https://www.mycustom.url/ko"
                                            description: Url where the customer will be redirected after finishing a failed transaction. (Max 255 characters)
                                        notifyDirectPayment:
                                            type: integer
                                            description: "Configurate POST notification of the operation result in frictionless payment (possible values: 1 - force notify, 2 - not notify). It will notify if is not informed"
                                            example: 1
                                        merchantData:
                                            type: object
                                            description: 'Client authentication information. The more information is provided in this field, the more likely the authorization of the operation will be without requiring additional authentication. For this reason, it is recommended to send as much information as possible.'
                                            properties:
                                                customer:
                                                    type: object
                                                    properties:
                                                        id:
                                                            type: string
                                                            description: Store customer identifier
                                                            example: "customer123"
                                                        name:
                                                            type: string
                                                            description: Name of customer
                                                            example: John
                                                        surname:
                                                            type: string
                                                            description: Surname of customer
                                                            example: Doe
                                                        email:
                                                            type: string
                                                            description: Email of customer
                                                            example: jdoe@myemail.com
                                                        homePhone:
                                                            type: object
                                                            description: Node with user home phone data
                                                            properties:
                                                                cc:
                                                                    type: integer
                                                                    description: "International dialling code of the customer’s home telephone number"
                                                                    example: 34
                                                                subscriber:
                                                                    type: integer
                                                                    description: "Customer’s home telephone number"
                                                                    example: 91820332211
                                                        mobilePhone:
                                                            type: object
                                                            description: Node with user mobile phone data
                                                            properties:
                                                                cc:
                                                                    type: integer
                                                                    description: "International dialling code of the customer’s mobile telephone number"
                                                                    example: 34
                                                                subscriber:
                                                                    type: integer
                                                                    description: "Customer’s mobile telephone number"
                                                                    example: 640456999
                                                        workPhone:
                                                            type: object
                                                            description: Node with user work phone data
                                                            properties:
                                                                cc:
                                                                    type: integer
                                                                    description: "International dialling code of the customer’s work telephone number"
                                                                    example: 34
                                                                subscriber:
                                                                    type: integer
                                                                    description: "Customer’s work telephone number"
                                                                    example: 913984300
                                                        firstBuy:
                                                            type: string
                                                            description: Indicates whether the user has already bought in this business ('si' if has made a operation, 'no' in opposite scenario)
                                                shipping:
                                                    type: object
                                                    description: Node with shipping address related information.
                                                    properties:
                                                        shipAddrCity:
                                                            type: string
                                                            description: City of delivery address.
                                                            example: Springfield
                                                        shipAddrCountry:
                                                            type: string
                                                            description: Numerical code (ISO 3166-1) of the country of the delivery address
                                                            example: 840
                                                        shipAddrLine1:
                                                            type: string
                                                            description: Delivery address, line 1
                                                            example: 742 Evergreen Terrace
                                                        shipAddrLine2:
                                                            type: string
                                                            description: Delivery address, line 2
                                                        shipAddrLine3:
                                                            type: string
                                                            description: Delivery address, line 3
                                                        shipAddrPostCode:
                                                            type: string
                                                            description: Post code of the delivery address
                                                            example: 89011
                                                        shipAddrState:
                                                            type: string
                                                            description: State or province of the delivery address. Must comply with ISO 3166-2.
                                                            example: Z
                                                billing:
                                                    type: object
                                                    properties:
                                                        billAddrCity:
                                                            type: string
                                                            description: City of delivery address.
                                                            example: Scranton
                                                        billAddrCountry:
                                                            type: string
                                                            description: Numerical code (ISO 3166-1) of the country of the delivery address
                                                            example: 840
                                                        billAddrLine1:
                                                            type: string
                                                            description: Delivery address, line 1
                                                            example: 1725 Slough Avenue
                                                        billAddrLine2:
                                                            type: string
                                                            description: Delivery address, line 2
                                                        billAddrLine3:
                                                            type: string
                                                            description: Delivery address, line 3
                                                        billAddrPostCode:
                                                            type: string
                                                            description: Post code of the delivery address
                                                            example: 18501
                                                        billAddrState:
                                                            type: string
                                                            description: State or province of the delivery address. Must comply with ISO 3166-2.
                                                            example: Z
                                                acctID:
                                                    type: string
                                                    description: Additional information you want to send to identify the account
                                                acctInfo:
                                                    type: object
                                                    description: Node with additional information on the user account at the store
                                                    properties:
                                                        chAccAgeInd:
                                                            type: string
                                                            description: "Period of time that the customer has had the account at the business. Possible values: 01 = No account (checkout as guest), 02 = Created in this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                            example: 05
                                                        chAccChange:
                                                            type: string
                                                            description: "Date on which the user account with the business was last modified, including the invoice or delivery address, the new payment account or new added users. Date format: YYYYMMDD"
                                                            example: 20200704
                                                        chAccChangeInd:
                                                            type: string
                                                            description: "Period of time passed since the payment user’s account with the business was last modified, including the invoice or delivery address, the new payment account or new added users. Accepted values: 01 = Modified in this transaction, 02 = Under 30 days, 03 = 30-60 days, 04 = Over 60 days"
                                                            example: 03
                                                        chAccDate:
                                                            type: string
                                                            description: "Date on which the payment user opened the account with the business. Date format: YYYYMMDD"
                                                            example: 20191225
                                                        chAccPwChange:
                                                            type: string
                                                            description: "Date on which the payment user changed the password of their account with the business, or reset their account. Date format: YYYYMMDD"
                                                            example: 20191225
                                                        chAccPwChangeInd:
                                                            type: string
                                                            description: "Indicates the period of time since the payment user’s account with the business changed its password or was reset. Accepted values: 01 = No changes, 02 = Changed during this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                            example: 01
                                                        nbPurchaseAccount:
                                                            type: integer
                                                            description: Number of purchases with this account during the last six months
                                                            example: 2
                                                        provisionAttemptsDay:
                                                            type: integer
                                                            description: Number of attempts to add a card in the last 24 hours
                                                            example: 0
                                                        txnActivityDay:
                                                            type: string
                                                            description: Number of transactions (successful and abandoned) for this account with the business in all payment accounts in the last 24 hours
                                                            example: 0
                                                        txnActivityYear:
                                                            type: string
                                                            description: Number of transactions (successful and abandoned) for this account of the payment user with the business in all payment accounts of the last year
                                                            example: 3
                                                        paymentAccAge:
                                                            type: string
                                                            description: Date on which the payment account was registered on the payment user’s account with the business.
                                                            example: 20191228
                                                        paymentAccInd:
                                                            type: string
                                                            description: "Indicates the period of time which the payment account was registered on the payment user’s account with the business. Accepted values: 01 = No account (checkout as guest), 02 = During this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                            example: 05
                                                        shipAddressUsage:
                                                            type: string
                                                            description: "Date on which the delivery address used for this transaction was used for the first time with the business. Date format: YYYYMMDD"
                                                            example: 20191228
                                                        shipAddressUsageInd:
                                                            type: string
                                                            description: "Indicates when the delivery address used for this transaction was used for the first time with the business. Accepted values: 01 = This transaction, 02 = Under 30 days, 03 = Between 30 and 60 days, 04 = Over 60 days"
                                                            example: 03
                                                        shipNameIndicator:
                                                            type: string
                                                            description: "Indicates whether the name of the payment user on the account is identical to the delivery name used for this transaction. Accepted values: 01 = Name on the account identical to the delivery name, 02 = Name on the account different from the delivery name"
                                                            example: 01
                                                        suspiciousAccActivity:
                                                            type: string
                                                            description: "Indicates whether the business has experienced suspicious activity (including previous fraud) on the payment user’s account. Accepted values: 01 = No record of suspicious activity, 02 = Record of suspicious activity"
                                                            example: 01
                                                merchantRiskIndicator:
                                                    type: object
                                                    description: Node with additional information of the business representing the evaluation of the level of risk of fraud for authentication. The delivery of this information is highly recommended
                                                    properties:
                                                        deliveryEmailAddress:
                                                            type: string
                                                            description: For electronic delivery, the email address to which the goods were delivered
                                                            example: jdoe@myemail.com
                                                        deliveryTimeframe:
                                                            type: string
                                                            description: "Indicates the delivery period of the goods. Accepted values: 01 = Electronic delivery, 02 = Delivery on the same day, 03 = 24 hour delivery, 04 = Delivery in 2 days or more"
                                                            example: 04
                                                        giftCardAmount:
                                                            type: string
                                                            description: For purchases from prepaid cards or gift cards, the total amount of the purchase in major units (for example, USD 123.45 is 123)
                                                            example: 123
                                                        giftCardCount:
                                                            type: integer
                                                            description: For purchases from prepaid cards or gift cards, total count of prepaid cards or gift cards/gift codes purchased
                                                            example: 1
                                                        giftCardCurr:
                                                            type: string
                                                            description: "For the purchase of prepaid/gift cards, code ISO-4217 of currency of the card"
                                                            example: 840
                                                        preOrderDate:
                                                            type: string
                                                            description: "For a pre-ordered purchase, the forecast availability date of the goods. Date format: YYYYMMDD"
                                                            example: 20201001
                                                        preOrderPurchaseInd:
                                                            type: string
                                                            description: "Indicates whether the customer makes an order with availability or future launch date. Accepted values: 01 = Goods available, 02 = Future availability"
                                                            example: 01
                                                        reorderItemsInd:
                                                            type: string
                                                            description: "Indicates whether the card is reordering previously purchased goods. Accepted values: 01 = First time purchased, 02 = Previously purchased"
                                                            example: 01
                                                        shipIndicator:
                                                            type: string
                                                            description: "Indicates the delivery method selected for the transaction. Businesses must select the delivery indicator code which more precisely describes the specific transaction of the payment user, not their general commercial activity. If one or more items are included in the sale, use the delivery Indicator code for physical goods, or if all products are digital, use the delivery Indicator code which describes the most expensive item. Accepted values: 01 = Delivery to the invoice address of the customer, 02 = Delivery to another verified address of the client, 03 = Delivery to an address other than that of the customer’s invoice address, 04 = Delivery to the store or collection at premises (the address of the store will be stored in the delivery address fields), 05 = Digital goods (includes online services, electronic gift cards and discount coupons), 06 = Tickets for events and trips, without delivery, 07 = Other (for example, games, digital services without delivery, subscriptions to online services, etc.)"
                                                            example: 03
                                                threeDSRequestorAuthenticationInfo:
                                                    type: object
                                                    description: Node with additional information on how the client was authenticated at the start of the session in the business account
                                                    properties:
                                                        threeDSReqAuthData:
                                                            type: string
                                                            description: Data which documents and supports a specific authentication process.
                                                        threeDSReqAuthMethod:
                                                            type: string
                                                            description: "Mechanism used by the customer to authenticate themselves in the business. Accepted values: 01 = Without 3DS authentication (for example, customer identified as guest), 02 = Logged onto the account on the ACS using the credentials of the ACS, 03 = Logged onto the account on the ACS using an affiliate identifier, 04 = Logged onto the account on the ACS using the credentials of the issuer, 05 = Logged onto the account on the ACS using a third party authentication, 06 = Logged onto the account on the ACS using a FIDO authenticator"
                                                            example: 01
                                                        threeDSReqAuthTimestamp:
                                                            type: string
                                                            description: "Date and time UTC of the authentication. Date format: YYYYMMDDHHMM"
                                                            example: 20200612113044
                                                shoppingCart:
                                                    type: array
                                                    items:
                                                        type: object
                                                        description: Node with the list of items purchased in the store
                                                        properties:
                                                            sku:
                                                                type: string
                                                                description: Product identifier
                                                                example: CODE-01
                                                            quantity:
                                                                type: integer
                                                                description: Units of product purchased
                                                                example: 1
                                                            unitPrice:
                                                                type: integer
                                                                description: unit amount of each product in integer format. 1.00 EURO = 100, 4.50 EUROS = 450, etc.
                                                                example: 295
                                                            name:
                                                                type: string
                                                                description: Product name
                                                                example: Product 01
                                                            category:
                                                                type: string
                                                                description: Product category
                                                                example: Internet gift card
                                                            articleType:
                                                                type: integer
                                                                description: article type (4 = Discount, 5 = Physical, 6 = Shipping_fee, 7 = Sales_tax, 8 = Digital, 9 = Gift_card, 10 = Store_credit, 11 = Surcharge)
                                                                example: 8
                                                addrMatch:
                                                    type: string
                                                    description: Indicates whether the delivery address is the same as the invoice address. Y = The delivery address is the same as the invoicing address, N = The delivery and invoice addresses are different
                                                    example: Y
                                                purchaseInstalData:
                                                    type: integer
                                                    description: "Mandatory for Instalment operations (MERCHANT_TRX_TYPE = I). Indicates the maximum number of deferred payment authorizations. Accepted values: The value must be greater than 1"
                                                recurringExpiry:
                                                    type: string
                                                    description: "Mandatory for Recurring and Instalment operations (MERCHANT_TRX_TYPE = I or R). The date from which there will be no more authorizations. Accepted format: YYYYMMDD"
                                                    example: 20200612
                                                recurringFrequency:
                                                    type: string
                                                    description: Mandatory for Recurring and Instalment operations (MERCHANT_TRX_TYPE = I or R). Indicates the minimum number of days between authorizations
                                                    example: 4
                                    required:
                                        - order
                                        - amount
                                        - currency
                                        - merchantIdentifier
                                        - originalIp
                                        - methodId
                                        - terminal
                                        - secure
                        examples:
                            example-1: {}
                description: ''
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  description: PAYCOMET API key (Authorization privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/payments/preauthrtoken:
        post:
            summary: Creates a preauthorization by reference
            tags:
                - preauthorizations
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                    amount:
                                        type: string
                                        example: "202"
                                    currency:
                                        type: string
                                        example: "EUR"
                                    methodId:
                                        type: integer
                                        example: 1
                                    order:
                                        type: string
                                        example: "PAY17123301"
                                    authCode:
                                        type: string
                                        example: "AC410397"
                                    challengeUrl:
                                        type: string
                                        example: "https://challenge.paycomet.com/challenge"
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            operationId: createPreauthorizationRtoken
            security:
                - paycometApiKey: []
            description: 'Creates a preauthorization with reference.'
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                language:
                                    type: string
                                    description: ISO2 code of language.
                                    default: 'es'
                                    example: 'en'
                                payment:
                                    type: object
                                    properties:
                                        terminal:
                                            type: integer
                                            description: Product or terminal Id.
                                        order:
                                            type: string
                                            example: "PAY987654321"
                                            description: "Unique reference for merchant's purchase"
                                        amount:
                                            type: string
                                            example: "202"
                                            description: 'Amount of the operation in number format. 1.00 EURO = 100, 4.50 EUROS = 450...'
                                        currency:
                                            type: string
                                            example: "EUR"
                                            description: 'Currency of the transaction. '
                                        methodId:
                                            type: string
                                            example: 1
                                            description: PAYCOMET payment method ID. 1 is for card.
                                        originalIp:
                                            type: string
                                            example: "127.0.0.1"
                                            description: IP Address of the customer that initiated the payment transaction
                                        secure:
                                            type: integer
                                            example: 1
                                            description: 0 or 1. Indicates if the transaction is secure.
                                        merchantIdentifier:
                                            type: string
                                            example: "520adffce7d9f5ea6bea5b03b837fd3f29817ef7"
                                            description: External reference of card
                                        merchantGroup:
                                            type: string
                                            example: "WHlSWmVDdzVQeUZ"
                                            description: Identification of external merchant group
                                        scoring:
                                            type: string
                                            description: Risk scoring value from 0 to 100.
                                        productDescription:
                                            type: string
                                            example: "Random product"
                                            description: Description of the product sold.
                                        merchantDescriptor:
                                            type: string
                                            description: 'Allows the business to send a text up to 25 characters that will be printed on the customer invoice. Limited to simple characters, no accents or special characters.'
                                        userInteraction:
                                            type: integer
                                            example: 1
                                            description: Indicates wether the business can interact with the customer
                                        # escrowTargets:
                                        #   type: array
                                        #   items:
                                        #     type: object
                                        #     description: Optional Identification of the recipients of receipts in ESCROW operations
                                        #     properties:
                                        #       id:
                                        #         type: string
                                        #         description: Recipient identifier
                                        #         example: 123
                                        #       amount:
                                        #         type: integer
                                        #         description: "Recipient' amount in number format. 1.00 EURO = 100, 4.50 EUROS = 450..."
                                        #         example: 100
                                        trxType:
                                            type: string
                                            description: Obligatory only if an MIT exception has been selected in scaException
                                        scaException:
                                            type: string
                                            description: 'TYPE OF EXCEPTION TO THE SECURE PAYMENT. If not specified, PAYCOMET will try to assign it the most appropriate possible'
                                        urlOk:
                                            type: string
                                            example: "https://www.mycustom.url/ok"
                                            description: Url where the customer will be redirected after finishing a correct transaction. (Max 255 characters)
                                        urlKo:
                                            type: string
                                            example: "https://www.mycustom.url/ko"
                                            description: Url where the customer will be redirected after finishing a failed transaction. (Max 255 characters)
                                        notifyDirectPayment:
                                            type: integer
                                            description: "Configurate POST notification of the operation result in frictionless payment (possible values: 1 - force notify, 2 - not notify). It will notify if is not informed"
                                            example: 1
                                        merchantData:
                                            type: object
                                            description: 'Client authentication information. The more information is provided in this field, the more likely the authorization of the operation will be without requiring additional authentication. For this reason, it is recommended to send as much information as possible.'
                                            properties:
                                                customer:
                                                    type: object
                                                    properties:
                                                        id:
                                                            type: string
                                                            description: Store customer identifier
                                                            example: "customer123"
                                                        name:
                                                            type: string
                                                            description: Name of customer
                                                            example: John
                                                        surname:
                                                            type: string
                                                            description: Surname of customer
                                                            example: Doe
                                                        email:
                                                            type: string
                                                            description: Email of customer
                                                            example: jdoe@myemail.com
                                                        homePhone:
                                                            type: object
                                                            description: Node with user home phone data
                                                            properties:
                                                                cc:
                                                                    type: integer
                                                                    description: "International dialling code of the customer’s home telephone number"
                                                                    example: 34
                                                                subscriber:
                                                                    type: integer
                                                                    description: "Customer’s home telephone number"
                                                                    example: 91820332211
                                                        mobilePhone:
                                                            type: object
                                                            description: Node with user mobile phone data
                                                            properties:
                                                                cc:
                                                                    type: integer
                                                                    description: "International dialling code of the customer’s mobile telephone number"
                                                                    example: 34
                                                                subscriber:
                                                                    type: integer
                                                                    description: "Customer’s mobile telephone number"
                                                                    example: 640456999
                                                        workPhone:
                                                            type: object
                                                            description: Node with user work phone data
                                                            properties:
                                                                cc:
                                                                    type: integer
                                                                    description: "International dialling code of the customer’s work telephone number"
                                                                    example: 34
                                                                subscriber:
                                                                    type: integer
                                                                    description: "Customer’s work telephone number"
                                                                    example: 913984300
                                                        firstBuy:
                                                            type: string
                                                            description: Indicates whether the user has already bought in this business ('si' if has made a operation, 'no' in opposite scenario)
                                                shipping:
                                                    type: object
                                                    description: Node with shipping address related information.
                                                    properties:
                                                        shipAddrCity:
                                                            type: string
                                                            description: City of delivery address.
                                                            example: Springfield
                                                        shipAddrCountry:
                                                            type: string
                                                            description: Numerical code (ISO 3166-1) of the country of the delivery address
                                                            example: 840
                                                        shipAddrLine1:
                                                            type: string
                                                            description: Delivery address, line 1
                                                            example: 742 Evergreen Terrace
                                                        shipAddrLine2:
                                                            type: string
                                                            description: Delivery address, line 2
                                                        shipAddrLine3:
                                                            type: string
                                                            description: Delivery address, line 3
                                                        shipAddrPostCode:
                                                            type: string
                                                            description: Post code of the delivery address
                                                            example: 89011
                                                        shipAddrState:
                                                            type: string
                                                            description: State or province of the delivery address. Must comply with ISO 3166-2.
                                                            example: Z
                                                billing:
                                                    type: object
                                                    properties:
                                                        billAddrCity:
                                                            type: string
                                                            description: City of delivery address.
                                                            example: Scranton
                                                        billAddrCountry:
                                                            type: string
                                                            description: Numerical code (ISO 3166-1) of the country of the delivery address
                                                            example: 840
                                                        billAddrLine1:
                                                            type: string
                                                            description: Delivery address, line 1
                                                            example: 1725 Slough Avenue
                                                        billAddrLine2:
                                                            type: string
                                                            description: Delivery address, line 2
                                                        billAddrLine3:
                                                            type: string
                                                            description: Delivery address, line 3
                                                        billAddrPostCode:
                                                            type: string
                                                            description: Post code of the delivery address
                                                            example: 18501
                                                        billAddrState:
                                                            type: string
                                                            description: State or province of the delivery address. Must comply with ISO 3166-2.
                                                            example: Z
                                                acctID:
                                                    type: string
                                                    description: Additional information you want to send to identify the account
                                                acctInfo:
                                                    type: object
                                                    description: Node with additional information on the user account at the store
                                                    properties:
                                                        chAccAgeInd:
                                                            type: string
                                                            description: "Period of time that the customer has had the account at the business. Possible values: 01 = No account (checkout as guest), 02 = Created in this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                            example: 05
                                                        chAccChange:
                                                            type: string
                                                            description: "Date on which the user account with the business was last modified, including the invoice or delivery address, the new payment account or new added users. Date format: YYYYMMDD"
                                                            example: 20200704
                                                        chAccChangeInd:
                                                            type: string
                                                            description: "Period of time passed since the payment user’s account with the business was last modified, including the invoice or delivery address, the new payment account or new added users. Accepted values: 01 = Modified in this transaction, 02 = Under 30 days, 03 = 30-60 days, 04 = Over 60 days"
                                                            example: 03
                                                        chAccDate:
                                                            type: string
                                                            description: "Date on which the payment user opened the account with the business. Date format: YYYYMMDD"
                                                            example: 20191225
                                                        chAccPwChange:
                                                            type: string
                                                            description: "Date on which the payment user changed the password of their account with the business, or reset their account. Date format: YYYYMMDD"
                                                            example: 20191225
                                                        chAccPwChangeInd:
                                                            type: string
                                                            description: "Indicates the period of time since the payment user’s account with the business changed its password or was reset. Accepted values: 01 = No changes, 02 = Changed during this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                            example: 01
                                                        nbPurchaseAccount:
                                                            type: integer
                                                            description: Number of purchases with this account during the last six months
                                                            example: 2
                                                        provisionAttemptsDay:
                                                            type: integer
                                                            description: Number of attempts to add a card in the last 24 hours
                                                            example: 0
                                                        txnActivityDay:
                                                            type: string
                                                            description: Number of transactions (successful and abandoned) for this account with the business in all payment accounts in the last 24 hours
                                                            example: 0
                                                        txnActivityYear:
                                                            type: string
                                                            description: Number of transactions (successful and abandoned) for this account of the payment user with the business in all payment accounts of the last year
                                                            example: 3
                                                        paymentAccAge:
                                                            type: string
                                                            description: Date on which the payment account was registered on the payment user’s account with the business.
                                                            example: 20191228
                                                        paymentAccInd:
                                                            type: string
                                                            description: "Indicates the period of time which the payment account was registered on the payment user’s account with the business. Accepted values: 01 = No account (checkout as guest), 02 = During this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                            example: 05
                                                        shipAddressUsage:
                                                            type: string
                                                            description: "Date on which the delivery address used for this transaction was used for the first time with the business. Date format: YYYYMMDD"
                                                            example: 20191228
                                                        shipAddressUsageInd:
                                                            type: string
                                                            description: "Indicates when the delivery address used for this transaction was used for the first time with the business. Accepted values: 01 = This transaction, 02 = Under 30 days, 03 = Between 30 and 60 days, 04 = Over 60 days"
                                                            example: 03
                                                        shipNameIndicator:
                                                            type: string
                                                            description: "Indicates whether the name of the payment user on the account is identical to the delivery name used for this transaction. Accepted values: 01 = Name on the account identical to the delivery name, 02 = Name on the account different from the delivery name"
                                                            example: 01
                                                        suspiciousAccActivity:
                                                            type: string
                                                            description: "Indicates whether the business has experienced suspicious activity (including previous fraud) on the payment user’s account. Accepted values: 01 = No record of suspicious activity, 02 = Record of suspicious activity"
                                                            example: 01
                                                merchantRiskIndicator:
                                                    type: object
                                                    description: Node with additional information of the business representing the evaluation of the level of risk of fraud for authentication. The delivery of this information is highly recommended
                                                    properties:
                                                        deliveryEmailAddress:
                                                            type: string
                                                            description: For electronic delivery, the email address to which the goods were delivered
                                                            example: jdoe@myemail.com
                                                        deliveryTimeframe:
                                                            type: string
                                                            description: "Indicates the delivery period of the goods. Accepted values: 01 = Electronic delivery, 02 = Delivery on the same day, 03 = 24 hour delivery, 04 = Delivery in 2 days or more"
                                                            example: 04
                                                        giftCardAmount:
                                                            type: string
                                                            description: For purchases from prepaid cards or gift cards, the total amount of the purchase in major units (for example, USD 123.45 is 123)
                                                            example: 123
                                                        giftCardCount:
                                                            type: integer
                                                            description: For purchases from prepaid cards or gift cards, total count of prepaid cards or gift cards/gift codes purchased
                                                            example: 1
                                                        giftCardCurr:
                                                            type: string
                                                            description: "For the purchase of prepaid/gift cards, code ISO-4217 of currency of the card"
                                                            example: 840
                                                        preOrderDate:
                                                            type: string
                                                            description: "For a pre-ordered purchase, the forecast availability date of the goods. Date format: YYYYMMDD"
                                                            example: 20201001
                                                        preOrderPurchaseInd:
                                                            type: string
                                                            description: "Indicates whether the customer makes an order with availability or future launch date. Accepted values: 01 = Goods available, 02 = Future availability"
                                                            example: 01
                                                        reorderItemsInd:
                                                            type: string
                                                            description: "Indicates whether the card is reordering previously purchased goods. Accepted values: 01 = First time purchased, 02 = Previously purchased"
                                                            example: 01
                                                        shipIndicator:
                                                            type: string
                                                            description: "Indicates the delivery method selected for the transaction. Businesses must select the delivery indicator code which more precisely describes the specific transaction of the payment user, not their general commercial activity. If one or more items are included in the sale, use the delivery Indicator code for physical goods, or if all products are digital, use the delivery Indicator code which describes the most expensive item. Accepted values: 01 = Delivery to the invoice address of the customer, 02 = Delivery to another verified address of the client, 03 = Delivery to an address other than that of the customer’s invoice address, 04 = Delivery to the store or collection at premises (the address of the store will be stored in the delivery address fields), 05 = Digital goods (includes online services, electronic gift cards and discount coupons), 06 = Tickets for events and trips, without delivery, 07 = Other (for example, games, digital services without delivery, subscriptions to online services, etc.)"
                                                            example: 03
                                                threeDSRequestorAuthenticationInfo:
                                                    type: object
                                                    description: Node with additional information on how the client was authenticated at the start of the session in the business account
                                                    properties:
                                                        threeDSReqAuthData:
                                                            type: string
                                                            description: Data which documents and supports a specific authentication process.
                                                        threeDSReqAuthMethod:
                                                            type: string
                                                            description: "Mechanism used by the customer to authenticate themselves in the business. Accepted values: 01 = Without 3DS authentication (for example, customer identified as guest), 02 = Logged onto the account on the ACS using the credentials of the ACS, 03 = Logged onto the account on the ACS using an affiliate identifier, 04 = Logged onto the account on the ACS using the credentials of the issuer, 05 = Logged onto the account on the ACS using a third party authentication, 06 = Logged onto the account on the ACS using a FIDO authenticator"
                                                            example: 01
                                                        threeDSReqAuthTimestamp:
                                                            type: string
                                                            description: "Date and time UTC of the authentication. Date format: YYYYMMDDHHMM"
                                                            example: 20200612113044
                                                shoppingCart:
                                                    type: array
                                                    items:
                                                        type: object
                                                        description: Node with the list of items purchased in the store
                                                        properties:
                                                            sku:
                                                                type: string
                                                                description: Product identifier
                                                                example: CODE-01
                                                            quantity:
                                                                type: integer
                                                                description: Units of product purchased
                                                                example: 1
                                                            unitPrice:
                                                                type: integer
                                                                description: unit amount of each product in integer format. 1.00 EURO = 100, 4.50 EUROS = 450, etc.
                                                                example: 295
                                                            name:
                                                                type: string
                                                                description: Product name
                                                                example: Product 01
                                                            category:
                                                                type: string
                                                                description: Product category
                                                                example: Internet gift card
                                                            articleType:
                                                                type: integer
                                                                description: article type (4 = Discount, 5 = Physical, 6 = Shipping_fee, 7 = Sales_tax, 8 = Digital, 9 = Gift_card, 10 = Store_credit, 11 = Surcharge)
                                                                example: 8
                                                addrMatch:
                                                    type: string
                                                    description: Indicates whether the delivery address is the same as the invoice address. Y = The delivery address is the same as the invoicing address, N = The delivery and invoice addresses are different
                                                    example: Y
                                                purchaseInstalData:
                                                    type: integer
                                                    description: "Mandatory for Instalment operations (MERCHANT_TRX_TYPE = I). Indicates the maximum number of deferred payment authorizations. Accepted values: The value must be greater than 1"
                                                recurringExpiry:
                                                    type: string
                                                    description: "Mandatory for Recurring and Instalment operations (MERCHANT_TRX_TYPE = I or R). The date from which there will be no more authorizations. Accepted format: YYYYMMDD"
                                                    example: 20200612
                                                recurringFrequency:
                                                    type: string
                                                    description: Mandatory for Recurring and Instalment operations (MERCHANT_TRX_TYPE = I or R). Indicates the minimum number of days between authorizations
                                                    example: 4
                                    required:
                                        - order
                                        - amount
                                        - currency
                                        - merchantIdentifier
                                        - originalIp
                                        - methodId
                                        - terminal
                                        - secure
                        examples:
                            example-1: {}
                description: ''
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  description: PAYCOMET API key (Authorization privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/subscription:
        post:
            summary: Create susbcription payment
            tags:
                - susbcriptions
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                    amount:
                                        type: string
                                        example: "202"
                                    currency:
                                        type: string
                                        example: "EUR"
                                    methodId:
                                        type: integer
                                        example: 1
                                    order:
                                        type: string
                                        example: "PAY17123301"
                                    authCode:
                                        type: string
                                        example: "AC410397"
                                    challengeUrl:
                                        type: string
                                        example: "https://challenge.paycomet.com/challenge"
                                    idUser:
                                        type: integer
                                        example: 12345678
                                    tokenUser:
                                        type: string
                                        example: "V1c1K1drRk9Ta1l"
                                    cardCountry:
                                        type: string
                                        example: "ES"
                                    subscription:
                                        type: object
                                        properties:
                                            startDate:
                                                type: string
                                                example: "20200211"
                                            endDate:
                                                type: string
                                                example: "20200811"
                                            periodicity:
                                                type: string
                                                example: "30"
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                                example: "The given data was invalid."
                                            detail:
                                                type: array
                                                items: {}
                                                example: "{'subscription.startDate': ['The subscription.start date must be a date after or equal to today.']}"
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                language:
                                    type: string
                                    description: ISO2 code of language.
                                    default: 'es'
                                    example: 'en'
                                subscription:
                                    type: object
                                    properties:
                                        startDate:
                                            type: string
                                            example: "20200211"
                                            description: First day of subscription
                                        endDate:
                                            type: string
                                            example: "20200811"
                                            description: Last day of subscription
                                        periodicity:
                                            type: string
                                            example: "30"
                                            description: In days, time between purchases
                                    required:
                                        - startDate
                                        - endDate
                                        - periodicity
                                payment:
                                    type: object
                                    required:
                                        - order
                                        - amount
                                        - currency
                                        - originalIp
                                        - methodId
                                        - idUser
                                        - tokenUser
                                        - terminal
                                        - secure
                                    properties:
                                        terminal:
                                            type: integer
                                            description: Product or terminal Id.
                                        methodId:
                                            type: string
                                            example: 1
                                            description: PAYCOMET payment method ID. 1 is for card.
                                        order:
                                            type: string
                                            example: "PAY987654321"
                                            description: "Unique reference for merchant's purchase"
                                        amount:
                                            type: string
                                            example: "202"
                                            description: 'Amount of the operation in number format. 1.00 EURO = 100, 4.50 EUROS = 450...'
                                        currency:
                                            type: string
                                            example: "EUR"
                                            description: 'Currency of the transaction. '
                                        originalIp:
                                            type: string
                                            example: "127.0.0.1"
                                            description: IP Address of the customer that initiated the payment transaction
                                        idUser:
                                            type: integer
                                            example: 12345678
                                            description: Identification of user card given by PAYCOMET. Mandatory if is a card payment.
                                        tokenUser:
                                            type: string
                                            example: "WHlSWmVDdzVQeUZ"
                                            description: Identification of user card given by PAYCOMET. Mandatory if is a card payment.
                                        secure:
                                            type: integer
                                            example: 1
                                            description: 0 or 1. Indicates if the transaction is secure.
                                        scoring:
                                            type: string
                                            description: Risk scoring value from 0 to 100.
                                        productDescription:
                                            type: string
                                            description: Description of the product sold.
                                        merchantDescriptor:
                                            type: string
                                            example: "My custom name"
                                            description: 'Allows the business to send a text up to 25 characters that will be printed on the customer invoice. Limited to simple characters, no accents or special characters.'
                                        userInteraction:
                                            type: integer
                                            description: Indicates wether the business can interact with the customer
                                        # escrowTargets:
                                        #   type: array
                                        #   items:
                                        #     type: object
                                        #     description: Optional Identification of the recipients of receipts in ESCROW operations
                                        #     properties:
                                        #       id:
                                        #         type: string
                                        #         description: Recipient identifier
                                        #         example: 123
                                        #       amount:
                                        #         type: integer
                                        #         description: "Recipient' amount in number format. 1.00 EURO = 100, 4.50 EUROS = 450..."
                                        #         example: 100
                                        trxType:
                                            type: string
                                            description: Obligatory only if an MIT exception has been selected in scaException
                                        scaException:
                                            type: string
                                            description: 'TYPE OF EXCEPTION TO THE SECURE PAYMENT. If not specified, PAYCOMET will try to assign it the most appropriate possible'
                                        urlOk:
                                            type: string
                                            example: "https://www.mycustom.url/ok"
                                            description: Url where the customer will be redirected after finishing a correct transaction. (Max 255 characters)
                                        urlKo:
                                            type: string
                                            example: "https://www.mycustom.url/ko"
                                            description: Url where the customer will be redirected after finishing a failed transaction. (Max 255 characters)
                                        notifyDirectPayment:
                                            type: integer
                                            description: "Configurate POST notification of the operation result in frictionless payment (possible values: 1 - force notify, 2 - not notify). It will notify if is not informed"
                                            example: 1
                                        merchantData:
                                            type: object
                                            description: 'Client authentication information. The more information is provided in this field, the more likely the authorization of the operation will be without requiring additional authentication. For this reason, it is recommended to send as much information as possible.'
                                            properties:
                                                customer:
                                                    type: object
                                                    properties:
                                                        id:
                                                            type: string
                                                            description: Store customer identifier
                                                            example: "customer123"
                                                        name:
                                                            type: string
                                                            description: Name of customer
                                                            example: John
                                                        surname:
                                                            type: string
                                                            description: Surname of customer
                                                            example: Doe
                                                        email:
                                                            type: string
                                                            description: Email of customer
                                                            example: jdoe@myemail.com
                                                        homePhone:
                                                            type: object
                                                            description: Node with user home phone data
                                                            properties:
                                                                cc:
                                                                    type: integer
                                                                    description: "International dialling code of the customer’s home telephone number"
                                                                    example: 34
                                                                subscriber:
                                                                    type: integer
                                                                    description: "Customer’s home telephone number"
                                                                    example: 91820332211
                                                        mobilePhone:
                                                            type: object
                                                            description: Node with user mobile phone data
                                                            properties:
                                                                cc:
                                                                    type: integer
                                                                    description: "International dialling code of the customer’s mobile telephone number"
                                                                    example: 34
                                                                subscriber:
                                                                    type: integer
                                                                    description: "Customer’s mobile telephone number"
                                                                    example: 640456999
                                                        workPhone:
                                                            type: object
                                                            description: Node with user work phone data
                                                            properties:
                                                                cc:
                                                                    type: integer
                                                                    description: "International dialling code of the customer’s work telephone number"
                                                                    example: 34
                                                                subscriber:
                                                                    type: integer
                                                                    description: "Customer’s work telephone number"
                                                                    example: 913984300
                                                        firstBuy:
                                                            type: string
                                                            description: Indicates whether the user has already bought in this business ('si' if has made a operation, 'no' in opposite scenario)
                                                shipping:
                                                    type: object
                                                    description: Node with shipping address related information.
                                                    properties:
                                                        shipAddrCity:
                                                            type: string
                                                            description: City of delivery address.
                                                            example: Springfield
                                                        shipAddrCountry:
                                                            type: string
                                                            description: Numerical code (ISO 3166-1) of the country of the delivery address
                                                            example: 840
                                                        shipAddrLine1:
                                                            type: string
                                                            description: Delivery address, line 1
                                                            example: 742 Evergreen Terrace
                                                        shipAddrLine2:
                                                            type: string
                                                            description: Delivery address, line 2
                                                        shipAddrLine3:
                                                            type: string
                                                            description: Delivery address, line 3
                                                        shipAddrPostCode:
                                                            type: string
                                                            description: Post code of the delivery address
                                                            example: 89011
                                                        shipAddrState:
                                                            type: string
                                                            description: State or province of the delivery address. Must comply with ISO 3166-2.
                                                            example: Z
                                                billing:
                                                    type: object
                                                    properties:
                                                        billAddrCity:
                                                            type: string
                                                            description: City of delivery address.
                                                            example: Scranton
                                                        billAddrCountry:
                                                            type: string
                                                            description: Numerical code (ISO 3166-1) of the country of the delivery address
                                                            example: 840
                                                        billAddrLine1:
                                                            type: string
                                                            description: Delivery address, line 1
                                                            example: 1725 Slough Avenue
                                                        billAddrLine2:
                                                            type: string
                                                            description: Delivery address, line 2
                                                        billAddrLine3:
                                                            type: string
                                                            description: Delivery address, line 3
                                                        billAddrPostCode:
                                                            type: string
                                                            description: Post code of the delivery address
                                                            example: 18501
                                                        billAddrState:
                                                            type: string
                                                            description: State or province of the delivery address. Must comply with ISO 3166-2.
                                                            example: Z
                                                acctID:
                                                    type: string
                                                    description: Additional information you want to send to identify the account
                                                acctInfo:
                                                    type: object
                                                    description: Node with additional information on the user account at the store
                                                    properties:
                                                        chAccAgeInd:
                                                            type: string
                                                            description: "Period of time that the customer has had the account at the business. Possible values: 01 = No account (checkout as guest), 02 = Created in this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                            example: 05
                                                        chAccChange:
                                                            type: string
                                                            description: "Date on which the user account with the business was last modified, including the invoice or delivery address, the new payment account or new added users. Date format: YYYYMMDD"
                                                            example: 20200704
                                                        chAccChangeInd:
                                                            type: string
                                                            description: "Period of time passed since the payment user’s account with the business was last modified, including the invoice or delivery address, the new payment account or new added users. Accepted values: 01 = Modified in this transaction, 02 = Under 30 days, 03 = 30-60 days, 04 = Over 60 days"
                                                            example: 03
                                                        chAccDate:
                                                            type: string
                                                            description: "Date on which the payment user opened the account with the business. Date format: YYYYMMDD"
                                                            example: 20191225
                                                        chAccPwChange:
                                                            type: string
                                                            description: "Date on which the payment user changed the password of their account with the business, or reset their account. Date format: YYYYMMDD"
                                                            example: 20191225
                                                        chAccPwChangeInd:
                                                            type: string
                                                            description: "Indicates the period of time since the payment user’s account with the business changed its password or was reset. Accepted values: 01 = No changes, 02 = Changed during this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                            example: 01
                                                        nbPurchaseAccount:
                                                            type: integer
                                                            description: Number of purchases with this account during the last six months
                                                            example: 2
                                                        provisionAttemptsDay:
                                                            type: integer
                                                            description: Number of attempts to add a card in the last 24 hours
                                                            example: 0
                                                        txnActivityDay:
                                                            type: string
                                                            description: Number of transactions (successful and abandoned) for this account with the business in all payment accounts in the last 24 hours
                                                            example: 0
                                                        txnActivityYear:
                                                            type: string
                                                            description: Number of transactions (successful and abandoned) for this account of the payment user with the business in all payment accounts of the last year
                                                            example: 3
                                                        paymentAccAge:
                                                            type: string
                                                            description: Date on which the payment account was registered on the payment user’s account with the business.
                                                            example: 20191228
                                                        paymentAccInd:
                                                            type: string
                                                            description: "Indicates the period of time which the payment account was registered on the payment user’s account with the business. Accepted values: 01 = No account (checkout as guest), 02 = During this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                            example: 05
                                                        shipAddressUsage:
                                                            type: string
                                                            description: "Date on which the delivery address used for this transaction was used for the first time with the business. Date format: YYYYMMDD"
                                                            example: 20191228
                                                        shipAddressUsageInd:
                                                            type: string
                                                            description: "Indicates when the delivery address used for this transaction was used for the first time with the business. Accepted values: 01 = This transaction, 02 = Under 30 days, 03 = Between 30 and 60 days, 04 = Over 60 days"
                                                            example: 03
                                                        shipNameIndicator:
                                                            type: string
                                                            description: "Indicates whether the name of the payment user on the account is identical to the delivery name used for this transaction. Accepted values: 01 = Name on the account identical to the delivery name, 02 = Name on the account different from the delivery name"
                                                            example: 01
                                                        suspiciousAccActivity:
                                                            type: string
                                                            description: "Indicates whether the business has experienced suspicious activity (including previous fraud) on the payment user’s account. Accepted values: 01 = No record of suspicious activity, 02 = Record of suspicious activity"
                                                            example: 01
                                                merchantRiskIndicator:
                                                    type: object
                                                    description: Node with additional information of the business representing the evaluation of the level of risk of fraud for authentication. The delivery of this information is highly recommended
                                                    properties:
                                                        deliveryEmailAddress:
                                                            type: string
                                                            description: For electronic delivery, the email address to which the goods were delivered
                                                            example: jdoe@myemail.com
                                                        deliveryTimeframe:
                                                            type: string
                                                            description: "Indicates the delivery period of the goods. Accepted values: 01 = Electronic delivery, 02 = Delivery on the same day, 03 = 24 hour delivery, 04 = Delivery in 2 days or more"
                                                            example: 04
                                                        giftCardAmount:
                                                            type: string
                                                            description: For purchases from prepaid cards or gift cards, the total amount of the purchase in major units (for example, USD 123.45 is 123)
                                                            example: 123
                                                        giftCardCount:
                                                            type: integer
                                                            description: For purchases from prepaid cards or gift cards, total count of prepaid cards or gift cards/gift codes purchased
                                                            example: 1
                                                        giftCardCurr:
                                                            type: string
                                                            description: For the purchase of prepaid/gift cards, code ISO-4217 of currency of the card
                                                            example: 840
                                                        preOrderDate:
                                                            type: string
                                                            description: "For a pre-ordered purchase, the forecast availability date of the goods. Date format: YYYYMMDD"
                                                            example: 20201001
                                                        preOrderPurchaseInd:
                                                            type: string
                                                            description: "Indicates whether the customer makes an order with availability or future launch date. Accepted values: 01 = Goods available, 02 = Future availability"
                                                            example: 01
                                                        reorderItemsInd:
                                                            type: string
                                                            description: "Indicates whether the card is reordering previously purchased goods. Accepted values: 01 = First time purchased, 02 = Previously purchased"
                                                            example: 01
                                                        shipIndicator:
                                                            type: string
                                                            description: "Indicates the delivery method selected for the transaction. Businesses must select the delivery indicator code which more precisely describes the specific transaction of the payment user, not their general commercial activity. If one or more items are included in the sale, use the delivery Indicator code for physical goods, or if all products are digital, use the delivery Indicator code which describes the most expensive item. Accepted values: 01 = Delivery to the invoice address of the customer, 02 = Delivery to another verified address of the client, 03 = Delivery to an address other than that of the customer’s invoice address, 04 = Delivery to the store or collection at premises (the address of the store will be stored in the delivery address fields), 05 = Digital goods (includes online services, electronic gift cards and discount coupons), 06 = Tickets for events and trips, without delivery, 07 = Other (for example, games, digital services without delivery, subscriptions to online services, etc.)"
                                                            example: 03
                                                threeDSRequestorAuthenticationInfo:
                                                    type: object
                                                    description: Node with additional information on how the client was authenticated at the start of the session in the business account
                                                    properties:
                                                        threeDSReqAuthData:
                                                            type: string
                                                            description: Data which documents and supports a specific authentication process.
                                                        threeDSReqAuthMethod:
                                                            type: string
                                                            description: "Mechanism used by the customer to authenticate themselves in the business. Accepted values: 01 = Without 3DS authentication (for example, customer identified as guest), 02 = Logged onto the account on the ACS using the credentials of the ACS, 03 = Logged onto the account on the ACS using an affiliate identifier, 04 = Logged onto the account on the ACS using the credentials of the issuer, 05 = Logged onto the account on the ACS using a third party authentication, 06 = Logged onto the account on the ACS using a FIDO authenticator"
                                                            example: 01
                                                        threeDSReqAuthTimestamp:
                                                            type: string
                                                            description: "Date and time UTC of the authentication. Date format: YYYYMMDDHHMM"
                                                            example: 20200612113044
                                                shoppingCart:
                                                    type: array
                                                    items:
                                                        type: object
                                                        description: Node with the list of items purchased in the store
                                                        properties:
                                                            sku:
                                                                type: string
                                                                description: Product identifier
                                                                example: CODE-01
                                                            quantity:
                                                                type: integer
                                                                description: Units of product purchased
                                                                example: 1
                                                            unitPrice:
                                                                type: integer
                                                                description: unit amount of each product in integer format. 1.00 EURO = 100, 4.50 EUROS = 450, etc.
                                                                example: 295
                                                            name:
                                                                type: string
                                                                description: Product name
                                                                example: Product 01
                                                            category:
                                                                type: string
                                                                description: Product category
                                                                example: Internet gift card
                                                            articleType:
                                                                type: integer
                                                                description: article type (4 = Discount, 5 = Physical, 6 = Shipping_fee, 7 = Sales_tax, 8 = Digital, 9 = Gift_card, 10 = Store_credit, 11 = Surcharge)
                                                                example: 8
                                                addrMatch:
                                                    type: string
                                                    description: "Indicates whether the delivery address is the same as the invoice address. Y = The delivery address is the same as the invoicing address, N = The delivery and invoice addresses are different"
                                                    example: Y
                                                purchaseInstalData:
                                                    type: integer
                                                    description: "Mandatory for Instalment operations (MERCHANT_TRX_TYPE = I). Indicates the maximum number of deferred payment authorizations. Accepted values: The value must be greater than 1"
                                                recurringExpiry:
                                                    type: string
                                                    description: "Mandatory for Recurring and Instalment operations (MERCHANT_TRX_TYPE = I or R). The date from which there will be no more authorizations. Accepted format: YYYYMMDD"
                                                    example: 20200612
                                                recurringFrequency:
                                                    type: string
                                                    description: "Mandatory for Recurring and Instalment operations (MERCHANT_TRX_TYPE = I or R). Indicates the minimum number of days between authorizations"
                                                    example: 4
                            required:
                                - subscription
                                - payment
            operationId: createSubscription
            description: 'Create subscription, create subscription token'
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  required: true
                  description: PAYCOMET API key (Authorization privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/subscription/{order}/edit:
        post:
            summary: Edit susbcription payment.
            tags:
                - susbcriptions
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                    amount:
                                        type: string
                                        example: "202"
                                    currency:
                                        type: string
                                        example: "EUR"
                                    methodId:
                                        type: integer
                                        example: 1
                                    authCode:
                                        type: string
                                        example: "AC410397"
                                    idUser:
                                        type: integer
                                        example: 12345678
                                    tokenUser:
                                        type: string
                                        example: "V1c1K1drRk9Ta1l"
                                    cardCountry:
                                        type: string
                                        example: "ES"
                                    subscription:
                                        type: object
                                        properties:
                                            startDate:
                                                type: string
                                                example: "20200211"
                                            endDate:
                                                type: string
                                                example: "20200811"
                                            periodicity:
                                                type: string
                                                example: "30"
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                                example: "The given data was invalid."
                                            detail:
                                                type: array
                                                items: {}
                                                example: "{'subscription.startDate': ['The subscription.start date must be a date after or equal to today.']}"
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                subscription:
                                    type: object
                                    properties:
                                        startDate:
                                            type: string
                                            example: "20200211"
                                            description: First day of subscription
                                        endDate:
                                            type: string
                                            example: "20200811"
                                            description: Last day of subscription
                                        periodicity:
                                            type: string
                                            example: "30"
                                            description: In days, time between purchases
                                        active:
                                            type: integer
                                            example: 1
                                            description: "1 to activate subscription, 0 to desactivate."
                                    required:
                                        - startDate
                                        - endDate
                                        - periodicity
                                payment:
                                    type: object
                                    required:
                                        - amount
                                        - originalIp
                                        - idUser
                                        - terminal
                                        - methodId
                                    properties:
                                        terminal:
                                            type: integer
                                            description: Product or terminal Id.
                                        amount:
                                            type: string
                                            example: "202"
                                            description: 'Amount of the operation in number format. 1.00 EURO = 100, 4.50 EUROS = 450...'
                                        originalIp:
                                            type: string
                                            example: "127.0.0.1"
                                            description: IP Address of the customer that initiated the payment transaction
                                        methodId:
                                            type: string
                                            example: 1
                                            description: PAYCOMET payment method ID. 1 is for card.
                                        idUser:
                                            type: integer
                                            example: 12345678
                                            description: Identification of user card given by PAYCOMET. Mandatory if is a card payment.
                                        tokenUser:
                                            type: string
                                            example: "WHlSWmVDdzVQeUZ"
                                            description: Identification of user card given by PAYCOMET. Mandatory if is a card payment.
                            required:
                                - subscription
                                - payment
            operationId: editSubscription
            description: 'Edit a subscription. The subscription is identified by the terminal, the payment method, the iduser and the original reference. The rest of the fields can be changed. Please note that changing an amount in a subscription may result in the bank rejecting the payment as the initial payment will not match the new one. To change the amount it is recommended to use the execute parameter. Even if the amount and currency are not changed they should be indicated with the original values'
            parameters:
                - name: order
                  schema:
                      type: string
                      example: YOURPAYREFERENCE
                  in: path
                  required: true
                - name: PAYCOMET-API-TOKEN
                  in: header
                  required: true
                  description: PAYCOMET API key (Authorization privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/subscription/{order}/remove:
        post:
            summary: Remove susbcription payment. If the susbscription is not a card subscription only the idUser is need. TokenUser is just for card subscriptions.
            tags:
                - susbcriptions
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                                example: "The given data was invalid."
                                            detail:
                                                type: array
                                                items: {}
                                                example: "{'payment.idUser': ['The payment.id user must be an integer.']}"
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                payment:
                                    type: object
                                    required:
                                        - terminal
                                        - idUser
                                        - methodId
                                        - order
                                    properties:
                                        terminal:
                                            type: integer
                                            description: Product or terminal Id.
                                        order:
                                            type: string
                                            example: "PAY17123301"
                                        methodId:
                                            type: string
                                            example: 1
                                            description: PAYCOMET payment method ID. 1 is for card.
                                        idUser:
                                            type: integer
                                            example: 12345678
                                            description: Identification of user card given by PAYCOMET. Mandatory if is a card payment.
                                        tokenUser:
                                            type: string
                                            example: "WHlSWmVDdzVQeUZ"
                                            description: Identification of user card given by PAYCOMET. Mandatory if is a card payment.
                            required:
                                - payment
            operationId: removeSubscription
            description: 'Delete a subscription. The subscription is identified by the terminal, the payment method, the iduser and the original reference.'
            parameters:
                - name: order
                  schema:
                      type: string
                      example: YOURPAYREFERENCE
                  in: path
                  required: true
                - name: PAYCOMET-API-TOKEN
                  in: header
                  required: true
                  description: PAYCOMET API key (Authorization privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/subscription/{order}/info:
        post:
            summary: Gets susbcription info. If the susbscription is not a card subscription only the idUser is need. TokenUser is just for card subscriptions.
            tags:
                - susbcriptions
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                                example: "The given data was invalid."
                                            detail:
                                                type: array
                                                items: {}
                                                example: "{'payment.idUser': ['The payment.id user must be an integer.']}"
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                payment:
                                    type: object
                                    required:
                                        - terminal
                                        - idUser
                                        - methodId
                                    properties:
                                        terminal:
                                            type: integer
                                            description: Product or terminal Id.
                                        methodId:
                                            type: string
                                            example: 1
                                            description: PAYCOMET payment method ID. 1 is for card.
                                        idUser:
                                            type: integer
                                            example: 12345678
                                            description: Identification of user card given by PAYCOMET. Mandatory if is a card payment.
                                        tokenUser:
                                            type: string
                                            example: "WHlSWmVDdzVQeUZ"
                                            description: Identification of user card given by PAYCOMET. Mandatory if is a card payment.
                            required:
                                - payment
            operationId: infoSubscription
            description: 'Gets the subscription info. The subscription is identified by the terminal, the payment method, the iduser and the original reference.'
            parameters:
                - name: order
                  schema:
                      type: string
                      example: YOURPAYREFERENCE
                  in: path
                  required: true
                - name: PAYCOMET-API-TOKEN
                  in: header
                  required: true
                  description: PAYCOMET API key (Authorization privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/payments/dcc:
        post:
            summary: Create an DCC payment
            tags:
                - dcc
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                    amount:
                                        type: string
                                        example: "202"
                                    currency:
                                        type: string
                                        example: "EUR"
                                    methodId:
                                        type: integer
                                        example: 1
                                    order:
                                        type: string
                                        example: "PAY17123301"
                                    authCode:
                                        type: string
                                        example: "AC410397"
                                    challengeUrl:
                                        type: string
                                        example: "https://challenge.paycomet.com/challenge"
                                    idUser:
                                        type: integer
                                        example: 12345678
                                    tokenUser:
                                        type: string
                                        example: "V1c1K1drRk9Ta1l"
                                    cardCountry:
                                        type: string
                                    dcc:
                                        type: object
                                        properties:
                                            session:
                                                type: string
                                            currency:
                                                type: string
                                            currencyIso3:
                                                type: string
                                            currencyName:
                                                type: string
                                            exchange:
                                                type: number
                                            amount:
                                                type: string
                                            date:
                                                type: string
                                            markup:
                                                type: number
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                payment:
                                    type: object
                                    properties:
                                        terminal:
                                            type: integer
                                            description: Product or terminal Id.
                                        order:
                                            type: string
                                            example: "PAY987654321"
                                            description: Reference of the operation. Must be unique on every valid transaction.
                                        tokenUser:
                                            type: string
                                            example: "WHlSWmVDdzVQeUZ"
                                            description: Token code associated with the IdUser.
                                        idUser:
                                            type: integer
                                            example: 12345678
                                            description: Unique identifier of the user registered in the system.
                                        originalIp:
                                            type: string
                                            example: "127.0.0.1"
                                            description: IP Address of the application of the business
                                        amount:
                                            type: string
                                            example: "202"
                                            description: 'Amount of the operation in number format. 1.00 EURO = 100, 4.50 EUROS = 450...'
                                        scoring:
                                            type: string
                                            description: Risk scoring value from 0 to 100.
                                        productDescription:
                                            type: string
                                            description: Description of the product
                                        merchantDescriptor:
                                            type: string
                                            example: "My custom name"
                                            description: 'Allows the business to send a text up to 25 characters that will be printed on the customer invoice. Limited to simple characters, no accents or special characters.'
                                        userInteraction:
                                            type: integer
                                            description: Indicates wether the business can interact with the customer
                                        # escrowTargets:
                                        #   type: array
                                        #   items:
                                        #     type: object
                                        #     description: Optional Identification of the recipients of receipts in ESCROW operations
                                        #     properties:
                                        #       id:
                                        #         type: string
                                        #         description: Recipient identifier
                                        #         example: 123
                                        #       amount:
                                        #         type: integer
                                        #         description: "Recipient' amount in number format. 1.00 EURO = 100, 4.50 EUROS = 450..."
                                        #         example: 100
                                        trxType:
                                            type: string
                                            description: Obligatory only if an MIT exception has been selected in scaException
                                        scaException:
                                            type: string
                                            description: 'TYPE OF EXCEPTION TO THE SECURE PAYMENT. If not specified, PAYCOMET will try to assign it the most appropriate possible'
                                        urlOk:
                                            type: string
                                            description: Url where the customer will be redirected after finishing a correct transaction. (Max 255 characters)
                                        urlKo:
                                            type: string
                                            description: Url where the customer will be redirected after finishing a failed transaction. (Max 255 characters)
                                        merchantData:
                                            type: object
                                            description: 'Client authentication information. The more information is provided in this field, the more likely the authorization of the operation will be without requiring additional authentication. For this reason, it is recommended to send as much information as possible.'
                                            properties:
                                                customer:
                                                    type: object
                                                    properties:
                                                        id:
                                                            type: string
                                                            description: Store customer identifier
                                                            example: "customer123"
                                                        name:
                                                            type: string
                                                            description: Name of customer
                                                            example: John
                                                        surname:
                                                            type: string
                                                            description: Surname of customer
                                                            example: Doe
                                                        email:
                                                            type: string
                                                            description: Email of customer
                                                            example: jdoe@myemail.com
                                                        homePhone:
                                                            type: object
                                                            description: Node with user home phone data
                                                            properties:
                                                                cc:
                                                                    type: integer
                                                                    description: "International dialling code of the customer’s home telephone number"
                                                                    example: 34
                                                                subscriber:
                                                                    type: integer
                                                                    description: "Customer’s home telephone number"
                                                                    example: 91820332211
                                                        mobilePhone:
                                                            type: object
                                                            description: Node with user mobile phone data
                                                            properties:
                                                                cc:
                                                                    type: integer
                                                                    description: "International dialling code of the customer’s mobile telephone number"
                                                                    example: 34
                                                                subscriber:
                                                                    type: integer
                                                                    description: "Customer’s mobile telephone number"
                                                                    example: 640456999
                                                        workPhone:
                                                            type: object
                                                            description: Node with user work phone data
                                                            properties:
                                                                cc:
                                                                    type: integer
                                                                    description: "International dialling code of the customer’s work telephone number"
                                                                    example: 34
                                                                subscriber:
                                                                    type: integer
                                                                    description: "Customer’s work telephone number"
                                                                    example: 913984300
                                                        firstBuy:
                                                            type: string
                                                            description: Indicates whether the user has already bought in this business ('si' if has made a operation, 'no' in opposite scenario)
                                                shipping:
                                                    type: object
                                                    description: Node with shipping address related information.
                                                    properties:
                                                        shipAddrCity:
                                                            type: string
                                                            description: City of delivery address.
                                                            example: Springfield
                                                        shipAddrCountry:
                                                            type: string
                                                            description: Numerical code (ISO 3166-1) of the country of the delivery address
                                                            example: 840
                                                        shipAddrLine1:
                                                            type: string
                                                            description: Delivery address, line 1
                                                            example: 742 Evergreen Terrace
                                                        shipAddrLine2:
                                                            type: string
                                                            description: Delivery address, line 2
                                                        shipAddrLine3:
                                                            type: string
                                                            description: Delivery address, line 3
                                                        shipAddrPostCode:
                                                            type: string
                                                            description: Post code of the delivery address
                                                            example: 89011
                                                        shipAddrState:
                                                            type: string
                                                            description: State or province of the delivery address. Must comply with ISO 3166-2.
                                                            example: Z
                                                billing:
                                                    type: object
                                                    properties:
                                                        billAddrCity:
                                                            type: string
                                                            description: City of delivery address.
                                                            example: Scranton
                                                        billAddrCountry:
                                                            type: string
                                                            description: Numerical code (ISO 3166-1) of the country of the delivery address
                                                            example: 840
                                                        billAddrLine1:
                                                            type: string
                                                            description: Delivery address, line 1
                                                            example: 1725 Slough Avenue
                                                        billAddrLine2:
                                                            type: string
                                                            description: Delivery address, line 2
                                                        billAddrLine3:
                                                            type: string
                                                            description: Delivery address, line 3
                                                        billAddrPostCode:
                                                            type: string
                                                            description: Post code of the delivery address
                                                            example: 18501
                                                        billAddrState:
                                                            type: string
                                                            description: State or province of the delivery address. Must comply with ISO 3166-2.
                                                            example: Z
                                                acctID:
                                                    type: string
                                                    description: Additional information you want to send to identify the account
                                                acctInfo:
                                                    type: object
                                                    description: Node with additional information on the user account at the store
                                                    properties:
                                                        chAccAgeInd:
                                                            type: string
                                                            description: "Period of time that the customer has had the account at the business. Possible values: 01 = No account (checkout as guest), 02 = Created in this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                            example: 05
                                                        chAccChange:
                                                            type: string
                                                            description: "Date on which the user account with the business was last modified, including the invoice or delivery address, the new payment account or new added users. Date format: YYYYMMDD"
                                                            example: 20200704
                                                        chAccChangeInd:
                                                            type: string
                                                            description: "Period of time passed since the payment user’s account with the business was last modified, including the invoice or delivery address, the new payment account or new added users. Accepted values: 01 = Modified in this transaction, 02 = Under 30 days, 03 = 30-60 days, 04 = Over 60 days"
                                                            example: 03
                                                        chAccDate:
                                                            type: string
                                                            description: "Date on which the payment user opened the account with the business. Date format: YYYYMMDD"
                                                            example: 20191225
                                                        chAccPwChange:
                                                            type: string
                                                            description: "Date on which the payment user changed the password of their account with the business, or reset their account. Date format: YYYYMMDD"
                                                            example: 20191225
                                                        chAccPwChangeInd:
                                                            type: string
                                                            description: "Indicates the period of time since the payment user’s account with the business changed its password or was reset. Accepted values: 01 = No changes, 02 = Changed during this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                            example: 01
                                                        nbPurchaseAccount:
                                                            type: integer
                                                            description: Number of purchases with this account during the last six months
                                                            example: 2
                                                        provisionAttemptsDay:
                                                            type: integer
                                                            description: Number of attempts to add a card in the last 24 hours
                                                            example: 0
                                                        txnActivityDay:
                                                            type: string
                                                            description: Number of transactions (successful and abandoned) for this account with the business in all payment accounts in the last 24 hours
                                                            example: 0
                                                        txnActivityYear:
                                                            type: string
                                                            description: Number of transactions (successful and abandoned) for this account of the payment user with the business in all payment accounts of the last year
                                                            example: 3
                                                        paymentAccAge:
                                                            type: string
                                                            description: Date on which the payment account was registered on the payment user’s account with the business.
                                                            example: 20191228
                                                        paymentAccInd:
                                                            type: string
                                                            description: "Indicates the period of time which the payment account was registered on the payment user’s account with the business. Accepted values: 01 = No account (checkout as guest), 02 = During this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                            example: 05
                                                        shipAddressUsage:
                                                            type: string
                                                            description: "Date on which the delivery address used for this transaction was used for the first time with the business. Date format: YYYYMMDD"
                                                            example: 20191228
                                                        shipAddressUsageInd:
                                                            type: string
                                                            description: "Indicates when the delivery address used for this transaction was used for the first time with the business. Accepted values: 01 = This transaction, 02 = Under 30 days, 03 = Between 30 and 60 days, 04 = Over 60 days"
                                                            example: 03
                                                        shipNameIndicator:
                                                            type: string
                                                            description: "Indicates whether the name of the payment user on the account is identical to the delivery name used for this transaction. Accepted values: 01 = Name on the account identical to the delivery name, 02 = Name on the account different from the delivery name"
                                                            example: 01
                                                        suspiciousAccActivity:
                                                            type: string
                                                            description: "Indicates whether the business has experienced suspicious activity (including previous fraud) on the payment user’s account. Accepted values: 01 = No record of suspicious activity, 02 = Record of suspicious activity"
                                                            example: 01
                                                merchantRiskIndicator:
                                                    type: object
                                                    description: Node with additional information of the business representing the evaluation of the level of risk of fraud for authentication. The delivery of this information is highly recommended
                                                    properties:
                                                        deliveryEmailAddress:
                                                            type: string
                                                            description: For electronic delivery, the email address to which the goods were delivered
                                                            example: jdoe@myemail.com
                                                        deliveryTimeframe:
                                                            type: string
                                                            description: "Indicates the delivery period of the goods. Accepted values: 01 = Electronic delivery, 02 = Delivery on the same day, 03 = 24 hour delivery, 04 = Delivery in 2 days or more"
                                                            example: 04
                                                        giftCardAmount:
                                                            type: string
                                                            description: For purchases from prepaid cards or gift cards, the total amount of the purchase in major units (for example, USD 123.45 is 123)
                                                            example: 123
                                                        giftCardCount:
                                                            type: integer
                                                            description: For purchases from prepaid cards or gift cards, total count of prepaid cards or gift cards/gift codes purchased
                                                            example: 1
                                                        giftCardCurr:
                                                            type: string
                                                            description: "For the purchase of prepaid/gift cards, code ISO-4217 of currency of the card"
                                                            example: 840
                                                        preOrderDate:
                                                            type: string
                                                            description: "For a pre-ordered purchase, the forecast availability date of the goods. Date format: YYYYMMDD"
                                                            example: 20201001
                                                        preOrderPurchaseInd:
                                                            type: string
                                                            description: "Indicates whether the customer makes an order with availability or future launch date. Accepted values: 01 = Goods available, 02 = Future availability"
                                                            example: 01
                                                        reorderItemsInd:
                                                            type: string
                                                            description: "Indicates whether the card is reordering previously purchased goods. Accepted values: 01 = First time purchased, 02 = Previously purchased"
                                                            example: 01
                                                        shipIndicator:
                                                            type: string
                                                            description: "Indicates the delivery method selected for the transaction. Businesses must select the delivery indicator code which more precisely describes the specific transaction of the payment user, not their general commercial activity. If one or more items are included in the sale, use the delivery Indicator code for physical goods, or if all products are digital, use the delivery Indicator code which describes the most expensive item. Accepted values: 01 = Delivery to the invoice address of the customer, 02 = Delivery to another verified address of the client, 03 = Delivery to an address other than that of the customer’s invoice address, 04 = Delivery to the store or collection at premises (the address of the store will be stored in the delivery address fields), 05 = Digital goods (includes online services, electronic gift cards and discount coupons), 06 = Tickets for events and trips, without delivery, 07 = Other (for example, games, digital services without delivery, subscriptions to online services, etc.)"
                                                            example: 03
                                                threeDSRequestorAuthenticationInfo:
                                                    type: object
                                                    description: Node with additional information on how the client was authenticated at the start of the session in the business account
                                                    properties:
                                                        threeDSReqAuthData:
                                                            type: string
                                                            description: Data which documents and supports a specific authentication process.
                                                        threeDSReqAuthMethod:
                                                            type: string
                                                            description: "Mechanism used by the customer to authenticate themselves in the business. Accepted values: 01 = Without 3DS authentication (for example, customer identified as guest), 02 = Logged onto the account on the ACS using the credentials of the ACS, 03 = Logged onto the account on the ACS using an affiliate identifier, 04 = Logged onto the account on the ACS using the credentials of the issuer, 05 = Logged onto the account on the ACS using a third party authentication, 06 = Logged onto the account on the ACS using a FIDO authenticator"
                                                            example: 01
                                                        threeDSReqAuthTimestamp:
                                                            type: string
                                                            description: "Date and time UTC of the authentication. Date format: YYYYMMDDHHMM"
                                                            example: 20200612113044
                                                shoppingCart:
                                                    type: array
                                                    items:
                                                        type: object
                                                        description: Node with the list of items purchased in the store
                                                        properties:
                                                            sku:
                                                                type: string
                                                                description: Product identifier
                                                                example: CODE-01
                                                            quantity:
                                                                type: integer
                                                                description: Units of product purchased
                                                                example: 1
                                                            unitPrice:
                                                                type: integer
                                                                description: unit amount of each product in integer format. 1.00 EURO = 100, 4.50 EUROS = 450, etc.
                                                                example: 295
                                                            name:
                                                                type: string
                                                                description: Product name
                                                                example: Product 01
                                                            category:
                                                                type: string
                                                                description: Product category
                                                                example: Internet gift card
                                                            articleType:
                                                                type: integer
                                                                description: article type (4 = Discount, 5 = Physical, 6 = Shipping_fee, 7 = Sales_tax, 8 = Digital, 9 = Gift_card, 10 = Store_credit, 11 = Surcharge)
                                                                example: 8
                                                addrMatch:
                                                    type: string
                                                    description: Indicates whether the delivery address is the same as the invoice address. Y = The delivery address is the same as the invoicing address, N = The delivery and invoice addresses are different
                                                    example: Y
                                                purchaseInstalData:
                                                    type: integer
                                                    description: "Mandatory for Instalment operations (MERCHANT_TRX_TYPE = I). Indicates the maximum number of deferred payment authorizations. Accepted values: The value must be greater than 1"
                                                recurringExpiry:
                                                    type: string
                                                    description: "Mandatory for Recurring and Instalment operations (MERCHANT_TRX_TYPE = I or R). The date from which there will be no more authorizations. Accepted format: YYYYMMDD"
                                                    example: 20200612
                                                recurringFrequency:
                                                    type: string
                                                    description: Mandatory for Recurring and Instalment operations (MERCHANT_TRX_TYPE = I or R). Indicates the minimum number of days between authorizations
                                                    example: 4
                            required:
                                - terminal
                                - tokenUser
                                - idUser
                                - originalIp
                                - amount
                description: ''
            operationId: dccPurchaseCreate
            description: execute_purchase_dcc
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  required: true
                  description: PAYCOMET API key (Authorization privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/payments/{order}/dcc/confirm:
        post:
            summary: Confirm previous DCC payment
            tags:
                - dcc
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    amount:
                                        type: string
                                        example: "202"
                                        description: 'Amount of the operation in number format. 1.00 EURO = 100, 4.50 EUROS = 450...'
                                    order:
                                        type: string
                                        example: "PAY17123301"
                                        description: Reference of the operation.
                                    currency:
                                        type: string
                                        example: "EUR"
                                        description: Currency of the transaction.
                                    authCode:
                                        type: string
                                        example: "AC410397"
                                        description: Authorization bank code of the transaction (required to execute a return).
                                    cardCountry:
                                        type: string
                                        description: 'Country of the issuer of the card in ISO3 Code (ex.: 724 = Spain). May be left empty.'
                                    challengeUrl:
                                        type: string
                                        example: "https://challenge.paycomet.com/challenge"
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                payment:
                                    type: object
                                    properties:
                                        terminal:
                                            type: integer
                                            description: Product or terminal Id.
                                        order:
                                            type: string
                                            example: "PAY987654321"
                                            description: "Unique reference for merchant's purchase"
                                        amount:
                                            type: string
                                            example: "202"
                                            description: 'Amount of the operation in number format. 1.00 EURO = 100, 4.50 EUROS = 450...'
                                        currency:
                                            type: string
                                            example: "EUR"
                                            description: 'Currency of the transaction. '
                                        methodId:
                                            type: string
                                            example: 1
                                            description: PAYCOMET payment method ID. 1 is for card.
                                        originalIp:
                                            type: string
                                            example: "127.0.0.1"
                                            description: IP Address of the customer that initiated the payment transaction
                                        secure:
                                            type: string
                                            example: 1
                                            description: 0 or 1. Indicates if the transaction is secure.
                                        idUser:
                                            type: string
                                            example: 12345678
                                            description: Identification of user card given by PAYCOMET. Mandatory if is a card payment.
                                        tokenUser:
                                            type: string
                                            example: "WHlSWmVDdzVQeUZ"
                                            description: Identification of user card given by PAYCOMET. Mandatory if is a card payment.
                                        scoring:
                                            type: string
                                            example: 0
                                            description: Risk scoring value from 0 to 100.
                                        productDescription:
                                            type: string
                                            description: Description of the product sold.
                                        merchantDescriptor:
                                            type: string
                                            example: "My custom name"
                                            description: 'Allows the business to send a text up to 25 characters that will be printed on the customer invoice. Limited to simple characters, no accents or special characters.'
                                        userInteraction:
                                            type: integer
                                            example: 1
                                            description: Indicates wether the business can interact with the customer
                                        # escrowTargets:
                                        #   type: array
                                        #   items:
                                        #     type: object
                                        #     description: Optional Identification of the recipients of receipts in ESCROW operations
                                        #     properties:
                                        #       id:
                                        #         type: string
                                        #         description: Recipient identifier
                                        #         example: 123
                                        #       amount:
                                        #         type: integer
                                        #         description: "Recipient' amount in number format. 1.00 EURO = 100, 4.50 EUROS = 450..."
                                        #         example: 100
                                        trxType:
                                            type: string
                                            description: Obligatory only if an MIT exception has been selected in scaException
                                        scaException:
                                            type: string
                                            description: 'TYPE OF EXCEPTION TO THE SECURE PAYMENT. If not specified, PAYCOMET will try to assign it the most appropriate possible'
                                        urlOk:
                                            type: string
                                            example: "https://www.mycustom.url/ok"
                                            description: Url where the customer will be redirected after finishing a correct transaction. (Max 255 characters)
                                        urlKo:
                                            type: string
                                            example: "https://www.mycustom.url/ok"
                                            description: Url where the customer will be redirected after finishing a failed transaction. (Max 255 characters)
                                        notifyDirectPayment:
                                            type: integer
                                            description: "Configurate POST notification of the operation result in frictionless payment (possible values: 1 - force notify, 2 - not notify). It will notify if is not informed"
                                            example: 1
                                        merchantData:
                                            type: object
                                            description: 'Client authentication information. The more information is provided in this field, the more likely the authorization of the operation will be without requiring additional authentication. For this reason, it is recommended to send as much information as possible.'
                                            properties:
                                                customer:
                                                    type: object
                                                    properties:
                                                        id:
                                                            type: string
                                                            description: Store customer identifier
                                                            example: "customer123"
                                                        name:
                                                            type: string
                                                            description: Name of customer
                                                            example: John
                                                        surname:
                                                            type: string
                                                            description: Surname of customer
                                                            example: Doe
                                                        email:
                                                            type: string
                                                            description: Email of customer
                                                            example: jdoe@myemail.com
                                                        homePhone:
                                                            type: object
                                                            description: Node with user home phone data
                                                            properties:
                                                                cc:
                                                                    type: integer
                                                                    description: "International dialling code of the customer’s home telephone number"
                                                                    example: 34
                                                                subscriber:
                                                                    type: integer
                                                                    description: "Customer’s home telephone number"
                                                                    example: 91820332211
                                                        mobilePhone:
                                                            type: object
                                                            description: Node with user mobile phone data
                                                            properties:
                                                                cc:
                                                                    type: integer
                                                                    description: "International dialling code of the customer’s mobile telephone number"
                                                                    example: 34
                                                                subscriber:
                                                                    type: integer
                                                                    description: "Customer’s mobile telephone number"
                                                                    example: 640456999
                                                        workPhone:
                                                            type: object
                                                            description: Node with user work phone data
                                                            properties:
                                                                cc:
                                                                    type: integer
                                                                    description: "International dialling code of the customer’s work telephone number"
                                                                    example: 34
                                                                subscriber:
                                                                    type: integer
                                                                    description: "Customer’s work telephone number"
                                                                    example: 913984300
                                                        firstBuy:
                                                            type: string
                                                            description: Indicates whether the user has already bought in this business ('si' if has made a operation, 'no' in opposite scenario)
                                                shipping:
                                                    type: object
                                                    description: Node with shipping address related information.
                                                    properties:
                                                        shipAddrCity:
                                                            type: string
                                                            description: City of delivery address.
                                                            example: Springfield
                                                        shipAddrCountry:
                                                            type: string
                                                            description: Numerical code (ISO 3166-1) of the country of the delivery address
                                                            example: 840
                                                        shipAddrLine1:
                                                            type: string
                                                            description: Delivery address, line 1
                                                            example: 742 Evergreen Terrace
                                                        shipAddrLine2:
                                                            type: string
                                                            description: Delivery address, line 2
                                                        shipAddrLine3:
                                                            type: string
                                                            description: Delivery address, line 3
                                                        shipAddrPostCode:
                                                            type: string
                                                            description: Post code of the delivery address
                                                            example: 89011
                                                        shipAddrState:
                                                            type: string
                                                            description: State or province of the delivery address. Must comply with ISO 3166-2.
                                                            example: Z
                                                billing:
                                                    type: object
                                                    properties:
                                                        billAddrCity:
                                                            type: string
                                                            description: City of delivery address.
                                                            example: Scranton
                                                        billAddrCountry:
                                                            type: string
                                                            description: Numerical code (ISO 3166-1) of the country of the delivery address
                                                            example: 840
                                                        billAddrLine1:
                                                            type: string
                                                            description: Delivery address, line 1
                                                            example: 1725 Slough Avenue
                                                        billAddrLine2:
                                                            type: string
                                                            description: Delivery address, line 2
                                                        billAddrLine3:
                                                            type: string
                                                            description: Delivery address, line 3
                                                        billAddrPostCode:
                                                            type: string
                                                            description: Post code of the delivery address
                                                            example: 18501
                                                        billAddrState:
                                                            type: string
                                                            description: State or province of the delivery address. Must comply with ISO 3166-2.
                                                            example: Z
                                                acctID:
                                                    type: string
                                                    description: Additional information you want to send to identify the account
                                                acctInfo:
                                                    type: object
                                                    description: Node with additional information on the user account at the store
                                                    properties:
                                                        chAccAgeInd:
                                                            type: string
                                                            description: "Period of time that the customer has had the account at the business. Possible values: 01 = No account (checkout as guest), 02 = Created in this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                            example: 05
                                                        chAccChange:
                                                            type: string
                                                            description: "Date on which the user account with the business was last modified, including the invoice or delivery address, the new payment account or new added users. Date format: YYYYMMDD"
                                                            example: 20200704
                                                        chAccChangeInd:
                                                            type: string
                                                            description: "Period of time passed since the payment user’s account with the business was last modified, including the invoice or delivery address, the new payment account or new added users. Accepted values: 01 = Modified in this transaction, 02 = Under 30 days, 03 = 30-60 days, 04 = Over 60 days"
                                                            example: 03
                                                        chAccDate:
                                                            type: string
                                                            description: "Date on which the payment user opened the account with the business. Date format: YYYYMMDD"
                                                            example: 20191225
                                                        chAccPwChange:
                                                            type: string
                                                            description: "Date on which the payment user changed the password of their account with the business, or reset their account. Date format: YYYYMMDD"
                                                            example: 20191225
                                                        chAccPwChangeInd:
                                                            type: string
                                                            description: "Indicates the period of time since the payment user’s account with the business changed its password or was reset. Accepted values: 01 = No changes, 02 = Changed during this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                            example: 01
                                                        nbPurchaseAccount:
                                                            type: integer
                                                            description: Number of purchases with this account during the last six months
                                                            example: 2
                                                        provisionAttemptsDay:
                                                            type: integer
                                                            description: Number of attempts to add a card in the last 24 hours
                                                            example: 0
                                                        txnActivityDay:
                                                            type: string
                                                            description: Number of transactions (successful and abandoned) for this account with the business in all payment accounts in the last 24 hours
                                                            example: 0
                                                        txnActivityYear:
                                                            type: string
                                                            description: Number of transactions (successful and abandoned) for this account of the payment user with the business in all payment accounts of the last year
                                                            example: 3
                                                        paymentAccAge:
                                                            type: string
                                                            description: Date on which the payment account was registered on the payment user’s account with the business.
                                                            example: 20191228
                                                        paymentAccInd:
                                                            type: string
                                                            description: "Indicates the period of time which the payment account was registered on the payment user’s account with the business. Accepted values: 01 = No account (checkout as guest), 02 = During this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                            example: 05
                                                        shipAddressUsage:
                                                            type: string
                                                            description: "Date on which the delivery address used for this transaction was used for the first time with the business. Date format: YYYYMMDD"
                                                            example: 20191228
                                                        shipAddressUsageInd:
                                                            type: string
                                                            description: "Indicates when the delivery address used for this transaction was used for the first time with the business. Accepted values: 01 = This transaction, 02 = Under 30 days, 03 = Between 30 and 60 days, 04 = Over 60 days"
                                                            example: 03
                                                        shipNameIndicator:
                                                            type: string
                                                            description: "Indicates whether the name of the payment user on the account is identical to the delivery name used for this transaction. Accepted values: 01 = Name on the account identical to the delivery name, 02 = Name on the account different from the delivery name"
                                                            example: 01
                                                        suspiciousAccActivity:
                                                            type: string
                                                            description: "Indicates whether the business has experienced suspicious activity (including previous fraud) on the payment user’s account. Accepted values: 01 = No record of suspicious activity, 02 = Record of suspicious activity"
                                                            example: 01
                                                merchantRiskIndicator:
                                                    type: object
                                                    description: Node with additional information of the business representing the evaluation of the level of risk of fraud for authentication. The delivery of this information is highly recommended
                                                    properties:
                                                        deliveryEmailAddress:
                                                            type: string
                                                            description: For electronic delivery, the email address to which the goods were delivered
                                                            example: jdoe@myemail.com
                                                        deliveryTimeframe:
                                                            type: string
                                                            description: "Indicates the delivery period of the goods. Accepted values: 01 = Electronic delivery, 02 = Delivery on the same day, 03 = 24 hour delivery, 04 = Delivery in 2 days or more"
                                                            example: 04
                                                        giftCardAmount:
                                                            type: string
                                                            description: For purchases from prepaid cards or gift cards, the total amount of the purchase in major units (for example, USD 123.45 is 123)
                                                            example: 123
                                                        giftCardCount:
                                                            type: integer
                                                            description: For purchases from prepaid cards or gift cards, total count of prepaid cards or gift cards/gift codes purchased
                                                            example: 1
                                                        giftCardCurr:
                                                            type: string
                                                            description: "For the purchase of prepaid/gift cards, code ISO-4217 of currency of the card"
                                                            example: 840
                                                        preOrderDate:
                                                            type: string
                                                            description: "For a pre-ordered purchase, the forecast availability date of the goods. Date format: YYYYMMDD"
                                                            example: 20201001
                                                        preOrderPurchaseInd:
                                                            type: string
                                                            description: "Indicates whether the customer makes an order with availability or future launch date. Accepted values: 01 = Goods available, 02 = Future availability"
                                                            example: 01
                                                        reorderItemsInd:
                                                            type: string
                                                            description: "Indicates whether the card is reordering previously purchased goods. Accepted values: 01 = First time purchased, 02 = Previously purchased"
                                                            example: 01
                                                        shipIndicator:
                                                            type: string
                                                            description: "Indicates the delivery method selected for the transaction. Businesses must select the delivery indicator code which more precisely describes the specific transaction of the payment user, not their general commercial activity. If one or more items are included in the sale, use the delivery Indicator code for physical goods, or if all products are digital, use the delivery Indicator code which describes the most expensive item. Accepted values: 01 = Delivery to the invoice address of the customer, 02 = Delivery to another verified address of the client, 03 = Delivery to an address other than that of the customer’s invoice address, 04 = Delivery to the store or collection at premises (the address of the store will be stored in the delivery address fields), 05 = Digital goods (includes online services, electronic gift cards and discount coupons), 06 = Tickets for events and trips, without delivery, 07 = Other (for example, games, digital services without delivery, subscriptions to online services, etc.)"
                                                            example: 03
                                                threeDSRequestorAuthenticationInfo:
                                                    type: object
                                                    description: Node with additional information on how the client was authenticated at the start of the session in the business account
                                                    properties:
                                                        threeDSReqAuthData:
                                                            type: string
                                                            description: Data which documents and supports a specific authentication process.
                                                        threeDSReqAuthMethod:
                                                            type: string
                                                            description: "Mechanism used by the customer to authenticate themselves in the business. Accepted values: 01 = Without 3DS authentication (for example, customer identified as guest), 02 = Logged onto the account on the ACS using the credentials of the ACS, 03 = Logged onto the account on the ACS using an affiliate identifier, 04 = Logged onto the account on the ACS using the credentials of the issuer, 05 = Logged onto the account on the ACS using a third party authentication, 06 = Logged onto the account on the ACS using a FIDO authenticator"
                                                            example: 01
                                                        threeDSReqAuthTimestamp:
                                                            type: string
                                                            description: "Date and time UTC of the authentication. Date format: YYYYMMDDHHMM"
                                                            example: 20200612113044
                                                shoppingCart:
                                                    type: array
                                                    items:
                                                        type: object
                                                        description: Node with the list of items purchased in the store
                                                        properties:
                                                            sku:
                                                                type: string
                                                                description: Product identifier
                                                                example: CODE-01
                                                            quantity:
                                                                type: integer
                                                                description: Units of product purchased
                                                                example: 1
                                                            unitPrice:
                                                                type: integer
                                                                description: unit amount of each product in integer format. 1.00 EURO = 100, 4.50 EUROS = 450, etc.
                                                                example: 295
                                                            name:
                                                                type: string
                                                                description: Product name
                                                                example: Product 01
                                                            category:
                                                                type: string
                                                                description: Product category
                                                                example: Internet gift card
                                                            articleType:
                                                                type: integer
                                                                description: article type (4 = Discount, 5 = Physical, 6 = Shipping_fee, 7 = Sales_tax, 8 = Digital, 9 = Gift_card, 10 = Store_credit, 11 = Surcharge)
                                                                example: 8
                                                addrMatch:
                                                    type: string
                                                    description: "Indicates whether the delivery address is the same as the invoice address. Y = The delivery address is the same as the invoicing address, N = The delivery and invoice addresses are different"
                                                    example: Y
                                                purchaseInstalData:
                                                    type: integer
                                                    description: "Mandatory for Instalment operations (MERCHANT_TRX_TYPE = I). Indicates the maximum number of deferred payment authorizations. Accepted values: The value must be greater than 1"
                                                recurringExpiry:
                                                    type: string
                                                    description: "Mandatory for Recurring and Instalment operations (MERCHANT_TRX_TYPE = I or R). The date from which there will be no more authorizations. Accepted format: YYYYMMDD"
                                                    example: 20200612
                                                recurringFrequency:
                                                    type: string
                                                    description: "Mandatory for Recurring and Instalment operations (MERCHANT_TRX_TYPE = I or R). Indicates the minimum number of days between authorizations"
                                                    example: 4
                                dcc:
                                    type: object
                                    properties:
                                        currency:
                                            type: string
                                            example: "EUR"
                                        session:
                                            type: string
                            required:
                                - terminal
                                - dcc
                description: ''
            operationId: dccPurchaseConfirm
            description: confirm_purchase_dcc
        parameters:
            - schema:
                  type: string
              name: order
              in: path
              required: true
            - name: PAYCOMET-API-TOKEN
              in: header
              required: true
              description: PAYCOMET API key (Authorization privilege required)
              schema:
                  type: string
                  example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/marketplace/split-transfer:
        post:
            summary: Make a transfer to other accounts on PAYCOMET
            tags:
                - marketplace
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                    order:
                                        type: string
                                        example: "PAY17123301"
                                    submerchant:
                                        type: object
                                        properties:
                                            amount:
                                                type: number
                                                example: 202
                                            currency:
                                                type: string
                                                example: "EUR"
                                            splitAuthCode:
                                                type: string
                                                example: "SP-141678/62841186843381570037170515"
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                                example: "The given data was invalid."
                                            detail:
                                                type: array
                                                items: {}
                                                example: "{'submerchant.splitId': ['The submerchant.split id must be 64 characters.']}"
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                submerchant:
                                    type: object
                                    properties:
                                        splitId:
                                            type: string
                                            example: "b325b9110f8c0l30o5a1d762303dba9e4d2cde43224c125d"
                                            description: Identifier for you to receive split payments
                                        amount:
                                            type: number
                                            example: 202
                                            description: Amount of the operation
                                        currency:
                                            type: string
                                            example: "EUR"
                                            description: Currency of the transaction
                                    required:
                                        - splitId
                                        - amount
                                        - currency
                                payment:
                                    type: object
                                    required:
                                        - order
                                        - terminal
                                    properties:
                                        terminal:
                                            type: integer
                                            description: Product or terminal Id.
                                        order:
                                            type: string
                                            example: "PAY987654321"
                                            description: "Unique reference for merchant's purchase"
                                        authCode:
                                            type: string
                                            example: "123456"
                                            description: 'Authorization bank code of the transaction (required to execute a split)'
                            required:
                                - submerchant
                                - payment
                                - authCode
            operationId: splitTransfer
            description: 'Make a deposit in a destination account'
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  required: true
                  description: PAYCOMET API key (Authorization privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/marketplace/split-transfer-reversal:
        post:
            summary: Run a split transfer reversal based on a previous split transfer
            tags:
                - marketplace
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                    order:
                                        type: string
                                        example: "PAY17123301"
                                    submerchant:
                                        type: object
                                        properties:
                                            amount:
                                                type: number
                                                example: 202
                                            currency:
                                                type: string
                                                example: "EUR"
                                            splitAuthCode:
                                                type: string
                                                example: "SP-141678/62841186843381570037170515"
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                                example: "The given data was invalid."
                                            detail:
                                                type: array
                                                items: {}
                                                example: "{'submerchant.splitId': ['The submerchant.split id must be 64 characters.']}"
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                submerchant:
                                    type: object
                                    properties:
                                        splitId:
                                            type: string
                                            example: "b325b9110f8c0l30o5a1d762303dba9e4d2cde43224c125d"
                                            description: Identifier for you to receive split payments
                                        amount:
                                            type: number
                                            example: 202
                                            description: Amount of the operation
                                        currency:
                                            type: string
                                            example: "EUR"
                                            description: Currency of the transaction
                                        splitAuthCode:
                                            type: string
                                            example: "SP-141678/62841186843381570037170515"
                                            description: Authorization code of the original split transfer
                                    required:
                                        - splitId
                                        - amount
                                        - currency
                                        - splitAuthCode
                                payment:
                                    type: object
                                    required:
                                        - order
                                        - terminal
                                        - authCode
                                    properties:
                                        terminal:
                                            type: integer
                                            description: Product or terminal Id.
                                        order:
                                            type: string
                                            example: "PAY987654321"
                                            description: "Unique reference for merchant's purchase"
                                        authCode:
                                            type: string
                                            example: "123456"
                                            description: 'Authorization bank code of the transaction (required to execute a split)'
                            required:
                                - submerchant
                                - payment
                                - authCode
            operationId: splitTransferReversal
            description: 'Make a split transfer reversal request'
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  required: true
                  description: PAYCOMET API key (Authorization privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/marketplace/transfer:
        post:
            summary: Run a transfer
            tags:
                - marketplace
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                    order:
                                        type: string
                                        example: "PAY17123301"
                                    submerchant:
                                        type: object
                                        properties:
                                            amount:
                                                type: number
                                                example: 202
                                            currency:
                                                type: string
                                                example: "EUR"
                                            splitAuthCode:
                                                type: string
                                                example: "TR-141678/62841186843381570037170515"
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                                example: "The given data was invalid."
                                            detail:
                                                type: array
                                                items: {}
                                                example: "{'submerchant.splitId': ['The submerchant.split id must be 64 characters.']}"
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                submerchant:
                                    type: object
                                    properties:
                                        splitId:
                                            type: string
                                            example: "b325b9110f8c0l30o5a1d762303dba9e4d2cde43224c125d"
                                            description: Identifier for you to receive split payments
                                        amount:
                                            type: number
                                            example: 202
                                            description: Amount of the operation
                                        currency:
                                            type: string
                                            example: "EUR"
                                            description: Currency of the transaction
                                    required:
                                        - splitId
                                        - amount
                                        - currency
                                payment:
                                    type: object
                                    required:
                                        - order
                                        - terminal
                                    properties:
                                        terminal:
                                            type: integer
                                            description: Product or terminal Id.
                                        order:
                                            type: string
                                            example: "PAY987654321"
                                            description: "Unique reference for merchant's purchase"
                            required:
                                - submerchant
                                - payment
            operationId: transfer
            description: 'Run a transfer in a destination account'
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  required: true
                  description: PAYCOMET API key (Authorization privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/marketplace/transfer-reversal:
        post:
            summary: Make a transfer reversal based on a previous transfer
            tags:
                - marketplace
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                    order:
                                        type: string
                                        example: "PAY17123301"
                                    submerchant:
                                        type: object
                                        properties:
                                            amount:
                                                type: number
                                                example: 202
                                            currency:
                                                type: string
                                                example: "EUR"
                                            splitAuthCode:
                                                type: string
                                                example: "TR-141678/62841186843381570037170515"
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                                example: "The given data was invalid."
                                            detail:
                                                type: array
                                                items: {}
                                                example: "{'submerchant.splitId': ['The submerchant.split id must be 64 characters.']}"
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                submerchant:
                                    type: object
                                    properties:
                                        splitId:
                                            type: string
                                            example: "b325b9110f8c0l30o5a1d762303dba9e4d2cde43224c125d"
                                            description: Identifier for you to receive split payments
                                        amount:
                                            type: number
                                            example: 202
                                            description: Amount of the operation
                                        currency:
                                            type: string
                                            example: "EUR"
                                            description: Currency of the transaction
                                        splitAuthCode:
                                            type: string
                                            example: "TR-141678/62841186843381570037170515"
                                            description: Authorization code of the original split transfer
                                    required:
                                        - splitId
                                        - amount
                                        - currency
                                        - splitAuthCode
                                payment:
                                    type: object
                                    required:
                                        - order
                                        - terminal
                                    properties:
                                        terminal:
                                            type: integer
                                            description: Product or terminal Id.
                                        order:
                                            type: string
                                            example: "PAY987654321"
                                            description: "Unique reference for merchant's purchase"
                            required:
                                - submerchant
                                - payment
            operationId: transferReversal
            description: 'Make a transfer reversal based on a previous transfer'
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  required: true
                  description: PAYCOMET API key (Authorization privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/sepa/add-document:
        post:
            summary: Adds a SEPA document
            tags:
                - sepa
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                    merchantCustomerId:
                                        type: string
                                        example: "ABCD1234"
                                        description: Unique identifier of the client of the supplier.
                                    merchantCustomerIban:
                                        type: string
                                        example: "ES0123456789012345678901"
                                        description: Account number of the client in IBAN format.
                                    documentType:
                                        type: integer
                                        example: 12
                                        description: Identifier of the type of document on PAYCOMET.
                                    documentStatus:
                                        type: integer
                                        example: 3
                                        description: Identifier of the document status.
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                                example: "The given data was invalid."
                                            detail:
                                                type: array
                                                items: {}
                                                example: "{'sepaProviderId': ['The sepa provider id must be an integer.']}"
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                                    example: 1234
                                    description: Product or terminal Id.
                                sepaProviderId:
                                    type: integer
                                    example: 18
                                    description: Unique identifier assigned by PAYCOMET for the supplier sending SEPA operations. Available on the client control panel.
                                merchantCode:
                                    type: string
                                    example: "abcdefgh"
                                    description: Unique identifier as PAYCOMET account. Available on the client control panel.
                                merchantCustomerId:
                                    type: string
                                    example: "ABCD1234"
                                    description: Unique identifier of the client of the supplier.
                                merchantCustomerIban:
                                    type: string
                                    example: "ES0123456789012345678901"
                                    description: Account number of the client in IBAN format.
                                documentType:
                                    type: integer
                                    example: 12
                                    description: Identifier of the type of document on PAYCOMET.
                                fileContent:
                                    type: string
                                    example: "JVBERi0xLjQNJeLjz9MNCjY..."
                                    description: Binary content of the file to send, codified in base 64.
                            required:
                                - terminal
                                - sepaProviderId
                                - merchantCode
                                - merchantCustomerId
                                - merchantCustomerIban
                                - documentType
                description: ''
            operationId: addDocument
            description: add_document
        parameters:
            - name: PAYCOMET-API-TOKEN
              in: header
              required: true
              description: PAYCOMET API key (Authorization privilege required)
              schema:
                  type: string
                  example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/sepa/enrole-customer:
        post:
            summary: Generate a link to make a account check to a customer
            tags:
                - sepa
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                    merchantCustomerId:
                                        type: string
                                        example: "ABCD1234"
                                        description: Unique identifier of the client of the supplier.
                                    link:
                                        type: string
                                        example: "https://pycmt.me/Cust0m3rUrL"
                                        description: Link to redirect the customer to check the bank account
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                                example: "The given data was invalid."
                                            detail:
                                                type: array
                                                items: {}
                                                example: "{'sepaProviderId': ['The sepa provider id must be an integer.']}"
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                                    example: 1234
                                    description: Product or terminal Id.
                                sepaProviderId:
                                    type: integer
                                    example: 18
                                    description: Unique identifier assigned by PAYCOMET for the supplier sending SEPA operations. Available on the client control panel.
                                merchantCode:
                                    type: string
                                    example: "abcdefgh"
                                    description: Unique identifier as PAYCOMET account. Available on the client control panel.
                                merchantCustomerId:
                                    type: string
                                    example: "ABCD1234"
                                    description: Unique identifier of the client of the supplier.
                                customerMarket:
                                    type: string
                                    example: "ES"
                                    description: "Pre selected customer market (allowed values: AT,BE,DK,EE,FI,FR,DE,IE,IT,LV,LT,NL,NO,PL,PT,ES,SE,GB)"
                                customerLanguage:
                                    type: integer
                                    example: "es_ES"
                                    description: "Desired interface language (allowed values: da_DK,de_DE,en_US,en_GB,es_ES,fi_FI,fr_FR,it_IT,nl_NL,no_NO,pt_PT,pl_PL,sv_SE,et_EE,lt_LT,lv_LV)"
                            required:
                                - terminal
                                - sepaProviderId
                                - merchantCode
                                - merchantCustomerId
                description: ''
            operationId: enroleCustomer
            description: enrole_customer
        parameters:
            - name: PAYCOMET-API-TOKEN
              in: header
              required: true
              description: PAYCOMET API key (Authorization privilege required)
              schema:
                  type: string
                  example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/sepa/check-document:
        post:
            summary: Check a SEPA document
            tags:
                - sepa
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                    merchantCustomerId:
                                        type: string
                                        example: "ABCD1234"
                                        description: Unique identifier of the client of the supplier.
                                    merchantCustomerIban:
                                        type: string
                                        example: "ES0123456789012345678901"
                                        description: Account number of the client in IBAN format.
                                    documentType:
                                        type: integer
                                        example: 12
                                        description: Identifier of the type of document on PAYCOMET.
                                    documentStatus:
                                        type: integer
                                        example: 3
                                        description: Identifier of the document status.
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                                example: "The given data was invalid."
                                            detail:
                                                type: array
                                                items: {}
                                                example: "{'sepaProviderId': ['The sepa provider id must be an integer.']}"
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                                    example: 1234
                                    description: Product or terminal Id.
                                sepaProviderId:
                                    type: integer
                                    example: 18
                                    description: Unique identifier assigned by PAYCOMET for the supplier sending SEPA operations. Available on the client control panel.
                                merchantCode:
                                    type: string
                                    example: "abcdefgh"
                                    description: Unique identifier as PAYCOMET account. Available on the client control panel.
                                merchantCustomerId:
                                    type: string
                                    example: "ABCD1234"
                                    description: Unique identifier of the client of the supplier.
                                merchantCustomerIban:
                                    type: string
                                    example: "ES0123456789012345678901"
                                    description: Account number of the client in IBAN format.
                                documentType:
                                    type: integer
                                    example: 12
                                    description: Identifier of the type of document on PAYCOMET.
                            required:
                                - terminal
                                - sepaProviderId
                                - merchantCode
                                - merchantCustomerId
                                - merchantCustomerIban
                                - documentType
                description: ''
            operationId: checkDocument
            description: check_document
        parameters:
            - name: PAYCOMET-API-TOKEN
              in: header
              required: true
              description: PAYCOMET API key (Authorization privilege required)
              schema:
                  type: string
                  example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/sepa/check-customer:
        post:
            summary: Check a customers SEPA documentation
            tags:
                - sepa
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                    merchantCustomerId:
                                        type: string
                                        example: "ABCD1234"
                                        description: Unique identifier of the client of the supplier.
                                    merchantCustomerIban:
                                        type: string
                                        example: "ES0123456789012345678901"
                                        description: Account number of the client in IBAN format.
                                    documents:
                                        type: object
                                        example: {"3": false, "8": true, "9": true}
                                        description: Object with a pair key value to identify if a document type is verified or not.
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                                example: "The given data was invalid."
                                            detail:
                                                type: array
                                                items: {}
                                                example: "{'sepaProviderId': ['The sepa provider id must be an integer.']}"
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                                    example: 1234
                                    description: Product or terminal Id.
                                sepaProviderId:
                                    type: integer
                                    example: 18
                                    description: Unique identifier assigned by PAYCOMET for the supplier sending SEPA operations. Available on the client control panel.
                                merchantCode:
                                    type: string
                                    example: "abcdefgh"
                                    description: Unique identifier as PAYCOMET account. Available on the client control panel.
                                merchantCustomerId:
                                    type: string
                                    example: "ABCD1234"
                                    description: Unique identifier of the client of the supplier.
                                merchantCustomerIban:
                                    type: string
                                    example: "ES0123456789012345678901"
                                    description: Account number of the client in IBAN format.
                                merchantCustomerType:
                                    type: integer
                                    example: 12
                                    description: Identifier of the type of company on PAYCOMET.
                            required:
                                - terminal
                                - sepaProviderId
                                - merchantCode
                                - merchantCustomerId
                                - merchantCustomerIban
                                - merchantCustomerType
                description: ''
            operationId: checkCustomer
            description: check_customer
        parameters:
            - name: PAYCOMET-API-TOKEN
              in: header
              required: true
              description: PAYCOMET API key (Authorization privilege required)
              schema:
                  type: string
                  example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/sepa/operations:
        post:
            summary: Send SEPA operations
            tags:
                - sepa
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                    operations:
                                        type: array
                                        items:
                                            type: object
                                            description: 'Detail of the operations'
                                            properties:
                                                operationResult:
                                                    type: string
                                                    example: "OK"
                                                    description: "Operation result OK/KO"
                                                operationErrorCode:
                                                    type: integer
                                                    example: 1206
                                                    description: "Error code given by PAYCOMET for that operation"
                                                operationOrder:
                                                    type: string
                                                    example: "ABCD1234"
                                                    description: "Order reference"
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                                example: "The given data was invalid."
                                            detail:
                                                type: array
                                                items: {}
                                                example: "{'operations.0.merchantCode': ['The operations.0.merchantCode must be 8 characters.']}"
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                                    example: 1234
                                    description: Product or terminal Id.
                                sepaProviderId:
                                    type: integer
                                    example: 18
                                    description: Unique identifier assigned by PAYCOMET for the supplier sending SEPA operations. Available on the client control panel.
                                operations:
                                    type: array
                                    items:
                                        type: object
                                        description: 'Operations parameters'
                                        properties:
                                            operationType:
                                                type: integer
                                                minimum: 1
                                                maximum: 2
                                                example: 2
                                                description: "Type of operation. Identifies whether the operation is a direct debit or a transfer. 1 – Direct Debit (N19) 2 – Transfer (N34)"
                                            merchantCode:
                                                type: string
                                                minLength: 8
                                                maxLength: 8
                                                example: "abcdefgh"
                                                description: "Unique identifier as PAYCOMET account. Available on the client control panel."
                                            terminalIDDebtor:
                                                type: integer
                                                example: "1234"
                                                description: "This will be the terminal number assigned to the product. Obtained from the control panel. Identifies the terminal number of the debtor/payer of a SEPA operation. Therefore, it will depend on the type of operation (debit, transfer)."
                                            uniqueIdCreditor:
                                                type: string
                                                example: "abcd1234"
                                                description: "This will be the unique identifier of this individual, freelancer, company (recipient) in the client."
                                            companyNameCreditor:
                                                type: string
                                                example: "abcd1234"
                                                description: "Name of the company, individual or freelancer corresponding to the previous indicator."
                                            ibanNumberCreditor:
                                                type: string
                                                example: "ES123456789012341234"
                                                description: "IBAN code of the account of the recipient."
                                            swiftCodeCreditor:
                                                type: string
                                                example: ""
                                                description: "SWIFT code of the bank account of the recipient. Must be provided when the account IBAN is not Spanish. If the ibanNumberCreditor number belongs to a Spanish account, it must be sent as an empty string."
                                            companyTypeCreditor:
                                                type: integer
                                                minimum: 1
                                                maximum: 3
                                                example: 3
                                                description: "Identifier of the type of recipient: 1: Individual / 2: Freelancer / 3: Commercial Company."
                                            operationOrder:
                                                type: string
                                                example: "test-001"
                                                description: "Unique reference of the operation."
                                            operationAmount:
                                                type: integer
                                                example: 203
                                                description: "Amount in the transaction currency with 2 decimals in integer format: (€2.25 = 225)."
                                            operationCurrency:
                                                type: string
                                                maxLength: 3
                                                example: "EUR"
                                                description: "Currency type of the transaction. The only permitted currency is the euro, whose code is EUR."
                                            operationDatetime:
                                                type: string
                                                format: date
                                                example: "20210102"
                                                description: "Date desired for sending the SEPA operation / remittance. Always after the current date. Format: yyyymmdd."
                                            operationConcept:
                                                type: string
                                                maxLength: 100
                                                example: "Operation concept."
                                                description: "Concept assigned to the operation / remittance. This is the descriptor which will appear in banking entries. Maximum length 100. Although error 1273 specified 140 characters, PAYCOMET reserves 40, the maximum permitted in the input therefore being 100. Allowed charactaers: ([A-Za-z0-9]|[+|?|\/|-|:|(|)|.|,|'| ])"
                                        required:
                                            - operationType
                                            - merchantCode
                                            - terminalIDDebtor
                                            - uniqueIdCreditor
                                            - companyNameCreditor
                                            - ibanNumberCreditor
                                            - swiftCodeCreditor
                                            - companyTypeCreditor
                                            - operationOrder
                                            - operationAmount
                                            - operationCurrency
                                            - operationDatetime
                                            - operationConcept
                            required:
                                - terminal
                                - sepaProviderId
                                - operations
                description: ''
            operationId: sepaOperations
            description: sepa_operations
        parameters:
            - name: PAYCOMET-API-TOKEN
              in: header
              required: true
              description: PAYCOMET API key (Authorization privilege required)
              schema:
                  type: string
                  example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/sepa/cancel:
        post:
            summary: Cancel a SEPA order
            tags:
                - sepa
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    operationResult:
                                        type: string
                                        example: "OK"
                                    operationOrder:
                                        type: string
                                        example: "ABCD1234"
                                        description: "Order reference"
                                    errorCode:
                                        type: integer
                                        example: 133
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                                example: "The given data was invalid."
                                            detail:
                                                type: array
                                                items: {}
                                                example: "{'sepaProviderId': ['The sepa provider id must be an integer.']}"
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                                    example: 1234
                                    description: Product or terminal Id.
                                sepaProviderId:
                                    type: integer
                                    example: 18
                                    description: Unique identifier assigned by PAYCOMET for the supplier sending SEPA operations. Available on the client control panel.
                                merchantCode:
                                    type: string
                                    example: "abcdefgh"
                                    description: Unique identifier as PAYCOMET account. Available on the client control panel.
                                operationOrder:
                                    type: string
                                    example: "ABCD1234"
                                    description: "Order reference"
                            required:
                                - terminal
                                - sepaProviderId
                                - merchantCode
                                - operationOrder
                description: ''
            operationId: cancel
            description: cancel
        parameters:
            - name: PAYCOMET-API-TOKEN
              in: header
              required: true
              description: PAYCOMET API key (Authorization privilege required)
              schema:
                  type: string
                  example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"

    /v1/sepa/del-customer-iban:
        post:
            summary: Delete customer Iban
            tags:
                - sepa
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                    merchantCustomerId:
                                        type: string
                                        example: "ABCD1234"
                                        description: Unique identifier of the client of the supplier.
                                    merchantCustomerIban:
                                        type: string
                                        example: "ES0123456789012345678901"
                                        description: Account number of the client in IBAN format.                                    
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                                example: "The given data was invalid."
                                            detail:
                                                type: array
                                                items: {}
                                                example: "{'sepaProviderId': ['The sepa provider id must be an integer.']}"
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                                    example: 1234
                                    description: Product or terminal Id.
                                sepaProviderId:
                                    type: integer
                                    example: 18
                                    description: Unique identifier assigned by PAYCOMET for the supplier sending SEPA operations. Available on the client control panel.
                                merchantCode:
                                    type: string
                                    example: "abcdefgh"
                                    description: Unique identifier as PAYCOMET account. Available on the client control panel.
                                merchantCustomerId:
                                    type: string
                                    example: "ABCD1234"
                                    description: Unique identifier of the client of the supplier.
                                merchantCustomerIban:
                                    type: string
                                    example: "ES0123456789012345678901"
                                    description: Account number of the client in IBAN format to delete.
                            required:
                                - terminal
                                - sepaProviderId
                                - merchantCode
                                - merchantCustomerId
                                - merchantCustomerIban
                description: ''
            operationId: delCustomerIban
            description: delCustomerIban
        parameters:
            - name: PAYCOMET-API-TOKEN
              in: header
              required: true
              description: PAYCOMET API key (Authorization privilege required)
              schema:
                  type: string
                  example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"

    /v1/ivr/get-session:
        post:
            summary: Creates an IVR session
            tags:
                - IVR
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                        description: The error code if something went wrong. 0 means no error.
                                    ivrResponse:
                                        type: boolean
                                        example: true
                                        description: Indicates the session has been created.
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                                    example: 1234
                                    description: Product or terminal Id.
                                ivrProviderId:
                                    type: integer
                                    example: 18
                                    description: Supplier / IVR integrator code.
                                ivrStationId:
                                    type: string
                                    example: "14"
                                    description:  Location identifier.
                                ivrMerchantAmount:
                                    type: integer
                                    example: 203
                                    description: Amount of the operation in full format. 1,00 EURO = 100, 4,50 EUROS = 450...
                                ivrMerchantCurrency:
                                    type: string
                                    example: "EUR"
                                    description: Transaction currency.
                                ivrMerchantOrder:
                                    type: string
                                    example: "ABCD1234"
                                    description: Operation reference. It must be unique in each valid transaction. IMPORTANT IN CASE OF SUBSCRIPTIONS Do not include the characters “[“ or “]”, they will be used to recognise the business idUser.
                                ivrMerchantLanguage:
                                    type: string
                                    example: "es"
                                    description: Language (iso2) in which the IVR phrases will be sent
                                ivrTransactionType:
                                    type: string
                                    example: "107"
                                    description: Possible types 107 Bankstore user registration 1 Authorization 3 Pre-authorization 9 Subscription
                                ivrMerchantConcept:
                                    type: string
                                    example: "Concept"
                                    description: Operation concept.
                                ivrSubscriptionStartdate:
                                    type: string
                                    example: "2020-06-14"
                                    description: Mandatory in subscriptions. Subscription start date.
                                ivrSubscriptionEnddate:
                                    type: string
                                    example: "2025-06-14"
                                    description:  Mandatory in subscriptions. Subscription end date.
                                ivrSubscriptionPeriodicity:
                                    type: integer
                                    example: 1
                                    description: Mandatory in subscriptions. Frequency of the payment from the start date. The number is expressed in Days. It cannot be more than 365 days.
                                ivrMaxRetries:
                                    type: integer
                                    example: 3
                                    description: Number of attempts permitted.
                                ivrSessionTimeout:
                                    type: integer
                                    example: 10
                                    description:  Maximum session time. In seconds.
                                ivrCallbackStationTimeout:
                                    type: string
                                    example: "15"
                                    description: Extension of return in case of timeout.
                                ivrCallbackStationOk:
                                    type: string
                                    example: "16"
                                    description:  Extension of return in case of operation OK.
                                ivrCallbackStationKo:
                                    type: string
                                    example: "17"
                                    description:  Extension of return in case of operation KO.
                                ivrCallerPhoneNumber:
                                    type: string
                                    example: "666555444"
                                    description: Number of incoming call.
                                ivrProviderData01:
                                    type: string
                                    example: "abcd"
                                    description: Optional field.
                                vrProviderData02:
                                    type: string
                                    example: "abcd"
                                    description: Optional field.
                                ivrProviderData03:
                                    type: string
                                    example: "abcd"
                                    description: Optional field.
                                ivrProviderData04:
                                    type: string
                                    example: "abcd"
                                    description: Optional field.
                                ivrProviderData05:
                                    type: string
                                    example: "abcd"
                                    description: Optional field.
                            required:
                                - terminal
                                - ivrProviderId
                                - ivrStationId
                                - ivrMerchantAmount
                                - ivrMerchantCurrency
                                - ivrMerchantOrder
                                - ivrMerchantLanguage
                                - ivrTransactionType
                description: ''
            operationId: getSession
            description: get_session
        parameters:
            - name: PAYCOMET-API-TOKEN
              in: header
              required: true
              description: PAYCOMET API key (Authorization privilege required)
              schema:
                  type: string
                  example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/ivr/session-state:
        post:
            summary: Checks an IVR session
            tags:
                - IVR
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                        description: The error code if something went wrong. 0 means no error.
                                    ivrResponse:
                                        type: boolean
                                        example: 1
                                        description: Result of the session consultation. 0 -> It will indicate that it was not possible to localize the IVR session. 1 -> The session information have been found and will be returned afterwards.
                                    ivrSessionState:
                                        type: integer
                                        example: 2
                                        description: The possible values are the following. 0 Waiting. 1 Processing. 2 Finalised. OK. 3 Finalised. KO. 4 Communication time exceeded. 5 Reference not found. 6 Operation cancelled by the agent. 7 Call ended. Waiting for next call
                                    ivrSessionResult:
                                        type: integer
                                        example: 0
                                        description: The possible values are the following. 0 No error. 1 Payment operation error. 2 Error entering card data. 3 Error entering expiration month. 4 Error entering expiration year. 5 Error entering CVV
                                    ivrTimeLeft:
                                        type: integer
                                        example: 222
                                        description: Time remaining expressed in seconds for finishing the IVR session. In state 0, the established maximum time will be returned. In state 1 the remaining time will be returned. In states 2, 3, 4 and 5 0 will be returned.
                                    ivrDigitPan:
                                        type: integer
                                        example: 6
                                        description: When the IVR session is underway, the number of digits of the credit card that the client has entered will be returned. 0 will be returned if this information is not available.
                                    ivrDigitExp:
                                        type: integer
                                        example: 2
                                        description: When the IVR session is underway, the number of digits of the expiry date that the client has entered will be returned. 0 will be returned if this information is not available.
                                    ivrDigitCvc:
                                        type: integer
                                        example: 3
                                        description: When the IVR session is underway, the number of digits of the CVC2 that the client has entered will be returned. 0 will be shown if this information is not available.

                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                                    example: 1234
                                    description: Product or terminal Id.
                                ivrProviderId:
                                    type: integer
                                    example: 18
                                    description: Supplier / IVR integrator code.
                                ivrMerchantOrder:
                                    type: string
                                    example: "ABCD1234"
                                    description: Operation reference. It must be unique in each valid transaction. IMPORTANT IN CASE OF SUBSCRIPTIONS Do not include the characters “[“ or “]”, they will be used to recognise the business idUser.
                            required:
                                - terminal
                                - ivrProviderId
                                - ivrMerchantOrder
                description: ''
            operationId: checkSession
            description: check_session
        parameters:
            - name: PAYCOMET-API-TOKEN
              in: header
              required: true
              description: PAYCOMET API key (Authorization privilege required)
              schema:
                  type: string
                  example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/ivr/session-cancel:
        post:
            summary: Cancel an IVR session
            tags:
                - IVR
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                                        description: The error code if something went wrong. 0 means no error.
                                    ivrResponse:
                                        type: boolean
                                        example: 1
                                        description: Result of the session consultation. 0 -> It will indicate that it was not possible to localize the IVR session. 1 -> The session information have been found and will be returned afterwards.
                                    ivrSessionState:
                                        type: integer
                                        example: 2
                                        description: The possible values are the following. 0 Waiting. 1 Processing. 2 Finalised. OK. 3 Finalised. KO. 4 Communication time exceeded. 5 Reference not found. 6 Operation cancelled by the agent. 7 Call ended. Waiting for next call

                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            security:
                - paycometApiKey: []
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                                    example: 1234
                                    description: Product or terminal Id.
                                ivrProviderId:
                                    type: integer
                                    example: 18
                                    description: Supplier / IVR integrator code.
                                ivrMerchantOrder:
                                    type: string
                                    example: "ABCD1234"
                                    description: Operation reference. It must be unique in each valid transaction. IMPORTANT IN CASE OF SUBSCRIPTIONS Do not include the characters “[“ or “]”, they will be used to recognise the business idUser.
                            required:
                                - terminal
                                - ivrProviderId
                                - ivrMerchantOrder
                description: ''
            operationId: sessionCancel
            description: session_cancell
        parameters:
            - name: PAYCOMET-API-TOKEN
              in: header
              required: true
              description: PAYCOMET API key (Authorization privilege required)
              schema:
                  type: string
                  example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/launchpad/authorization:
        post:
            summary: Creates a payment link and sends it to customer
            tags:
                - launchpad
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            operationId: launchAuthorization
            security:
                - paycometApiKey: []
            description: 'Generate a authorization link. It will send a challenge URL to the client.'
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                                    description: Product or terminal Id.
                                order:
                                    type: string
                                    example: "PAY987654321"
                                    description: "Unique reference for merchant's purchase"
                                amount:
                                    type: string
                                    example: "202"
                                    description: 'Amount of the operation in number format. 1.00 EURO = 100, 4.50 EUROS = 450...'
                                currency:
                                    type: string
                                    example: "EUR"
                                    description: 'Currency of the transaction. '
                                methodId:
                                    type: string
                                    example: 1
                                    description: PAYCOMET payment method ID. 1 is for card.
                                originalIp:
                                    type: string
                                    example: "127.0.0.1"
                                    description: IP Address of the customer that initiated the payment transaction
                                secure:
                                    type: integer
                                    example: 1
                                    description: 0 or 1. Indicates if the transaction is secure.
                                language:
                                    type: string
                                    description: ISO2 code of language.
                                    default: 'es'
                                    example: 'en'
                                smsEmail:
                                    type: string
                                    description: Sending channel of the payment url. Should be "sms" or "email".
                                    example: "email"
                                templateId:
                                    type: integer
                                    description: Email or SMS template id to be sent. You can get it in the Control panel.
                                    example: 1234
                                emailAddress:
                                    type: string
                                    description: Conditional. Mandatory in sending method is EMAIL. Email address where link must be sent
                                    example: "johndoe@paycomet.com"
                                emailName:
                                    type: string
                                    description: Conditional. Mandatory in sending method is EMAIL. Email recipient of the email address where link must be sent
                                    example: "John Doe"
                                smsPrefix:
                                    type: string
                                    description: Conditional. Mandatory in sending method is SMS. International mobile prefix where link must be sent
                                    example: "+34"
                                smsNumber:
                                    type: string
                                    description: Conditional. Mandatory in sending method is SMS. Mobile number where link must be sent
                                    example: "654321123"
                                expiryDate:
                                    type: string
                                    description: Optional. Link expiration date. Format YYYYMMDD
                                    example: "20231217"
                                expiryHour:
                                    type: string
                                    description: Optional. Link expiration hour. Format HH
                                    example: "16"
                                expiryMinute:
                                    type: string
                                    description: Optional. Link expiration minute. Format MM
                                    example: "45"
                                scoring:
                                    type: string
                                    description: Risk scoring value from 0 to 100.
                                productDescription:
                                    type: string
                                    example: "Random product"
                                    description: Description of the product sold.
                                # escrowTargets:
                                #    type: array
                                #    items:
                                #      type: object
                                #      description: Optional Identification of the recipients of receipts in ESCROW operations
                                #      properties:
                                #        id:
                                #          type: string
                                #          description: Recipient identifier
                                #          example: 123
                                #        amount:
                                #          type: integer
                                #          description: "Recipient' amount in number format. 1.00 EURO = 100, 4.50 EUROS = 450..."
                                #          example: 100
                                trxType:
                                    type: string
                                    description: Obligatory only if an MIT exception has been selected in scaException
                                scaException:
                                    type: string
                                    description: 'TYPE OF EXCEPTION TO THE SECURE PAYMENT. If not specified, PAYCOMET will try to assign it the most appropriate possible'
                                merchantData:
                                    type: object
                                    description: 'Client authentication information. The more information is provided in this field, the more likely the authorization of the operation will be without requiring additional authentication. For this reason, it is recommended to send as much information as possible.'
                                    properties:
                                        customer:
                                            type: object
                                            properties:
                                                id:
                                                    type: integer
                                                    description: Store customer identifier
                                                    example: 12345678
                                                name:
                                                    type: string
                                                    description: Name of customer
                                                    example: John
                                                surname:
                                                    type: string
                                                    description: Surname of customer
                                                    example: Doe
                                                email:
                                                    type: string
                                                    description: Email of customer
                                                    example: jdoe@myemail.com
                                                homePhone:
                                                    type: object
                                                    description: Node with user home phone data
                                                    properties:
                                                        cc:
                                                            type: integer
                                                            description: "International dialling code of the customer’s home telephone number"
                                                            example: 34
                                                        subscriber:
                                                            type: integer
                                                            description: "Customer’s home telephone number"
                                                            example: 91820332211
                                                mobilePhone:
                                                    type: object
                                                    description: Node with user mobile phone data
                                                    properties:
                                                        cc:
                                                            type: integer
                                                            description: "International dialling code of the customer’s mobile telephone number"
                                                            example: 34
                                                        subscriber:
                                                            type: integer
                                                            description: "Customer’s mobile telephone number"
                                                            example: 640456999
                                                workPhone:
                                                    type: object
                                                    description: Node with user work phone data
                                                    properties:
                                                        cc:
                                                            type: integer
                                                            description: "International dialling code of the customer’s work telephone number"
                                                            example: 34
                                                        subscriber:
                                                            type: integer
                                                            description: "Customer’s work telephone number"
                                                            example: 913984300
                                                firstBuy:
                                                    type: string
                                                    description: Indicates whether the user has already bought in this business ('si' if has made a operation, 'no' in opposite scenario)
                                        shipping:
                                            type: object
                                            description: Node with shipping address related information.
                                            properties:
                                                shipAddrCity:
                                                    type: string
                                                    description: City of delivery address.
                                                    example: Springfield
                                                shipAddrCountry:
                                                    type: string
                                                    description: Numerical code (ISO 3166-1) of the country of the delivery address
                                                    example: 840
                                                shipAddrLine1:
                                                    type: string
                                                    description: Delivery address, line 1
                                                    example: 742 Evergreen Terrace
                                                shipAddrLine2:
                                                    type: string
                                                    description: Delivery address, line 2
                                                shipAddrLine3:
                                                    type: string
                                                    description: Delivery address, line 3
                                                shipAddrPostCode:
                                                    type: string
                                                    description: Post code of the delivery address
                                                    example: 89011
                                                shipAddrState:
                                                    type: string
                                                    description: State or province of the delivery address. Must comply with ISO 3166-2.
                                                    example: Z
                                        billing:
                                            type: object
                                            properties:
                                                billAddrCity:
                                                    type: string
                                                    description: City of delivery address.
                                                    example: Scranton
                                                billAddrCountry:
                                                    type: string
                                                    description: Numerical code (ISO 3166-1) of the country of the delivery address
                                                    example: 840
                                                billAddrLine1:
                                                    type: string
                                                    description: Delivery address, line 1
                                                    example: 1725 Slough Avenue
                                                billAddrLine2:
                                                    type: string
                                                    description: Delivery address, line 2
                                                billAddrLine3:
                                                    type: string
                                                    description: Delivery address, line 3
                                                billAddrPostCode:
                                                    type: string
                                                    description: Post code of the delivery address
                                                    example: 18501
                                                billAddrState:
                                                    type: string
                                                    description: State or province of the delivery address. Must comply with ISO 3166-2.
                                                    example: Z
                                        acctID:
                                            type: string
                                            description: Additional information you want to send to identify the account
                                        acctInfo:
                                            type: object
                                            description: Node with additional information on the user account at the store
                                            properties:
                                                chAccAgeInd:
                                                    type: string
                                                    description: "Period of time that the customer has had the account at the business. Possible values: 01 = No account (checkout as guest), 02 = Created in this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                    example: 05
                                                chAccChange:
                                                    type: string
                                                    description: "Date on which the user account with the business was last modified, including the invoice or delivery address, the new payment account or new added users. Date format: YYYYMMDD"
                                                    example: 20200704
                                                chAccChangeInd:
                                                    type: string
                                                    description: "Period of time passed since the payment user’s account with the business was last modified, including the invoice or delivery address, the new payment account or new added users. Accepted values: 01 = Modified in this transaction, 02 = Under 30 days, 03 = 30-60 days, 04 = Over 60 days"
                                                    example: 03
                                                chAccDate:
                                                    type: string
                                                    description: "Date on which the payment user opened the account with the business. Date format: YYYYMMDD"
                                                    example: 20191225
                                                chAccPwChange:
                                                    type: string
                                                    description: "Date on which the payment user changed the password of their account with the business, or reset their account. Date format: YYYYMMDD"
                                                    example: 20191225
                                                chAccPwChangeInd:
                                                    type: string
                                                    description: "Indicates the period of time since the payment user’s account with the business changed its password or was reset. Accepted values: 01 = No changes, 02 = Changed during this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                    example: 01
                                                nbPurchaseAccount:
                                                    type: integer
                                                    description: Number of purchases with this account during the last six months
                                                    example: 2
                                                provisionAttemptsDay:
                                                    type: integer
                                                    description: Number of attempts to add a card in the last 24 hours
                                                    example: 0
                                                txnActivityDay:
                                                    type: string
                                                    description: Number of transactions (successful and abandoned) for this account with the business in all payment accounts in the last 24 hours
                                                    example: 0
                                                txnActivityYear:
                                                    type: string
                                                    description: Number of transactions (successful and abandoned) for this account of the payment user with the business in all payment accounts of the last year
                                                    example: 3
                                                paymentAccAge:
                                                    type: string
                                                    description: Date on which the payment account was registered on the payment user’s account with the business.
                                                    example: 20191228
                                                paymentAccInd:
                                                    type: string
                                                    description: "Indicates the period of time which the payment account was registered on the payment user’s account with the business. Accepted values: 01 = No account (checkout as guest), 02 = During this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                    example: 05
                                                shipAddressUsage:
                                                    type: string
                                                    description: "Date on which the delivery address used for this transaction was used for the first time with the business. Date format: YYYYMMDD"
                                                    example: 20191228
                                                shipAddressUsageInd:
                                                    type: string
                                                    description: "Indicates when the delivery address used for this transaction was used for the first time with the business. Accepted values: 01 = This transaction, 02 = Under 30 days, 03 = Between 30 and 60 days, 04 = Over 60 days"
                                                    example: 03
                                                shipNameIndicator:
                                                    type: string
                                                    description: "Indicates whether the name of the payment user on the account is identical to the delivery name used for this transaction. Accepted values: 01 = Name on the account identical to the delivery name, 02 = Name on the account different from the delivery name"
                                                    example: 01
                                                suspiciousAccActivity:
                                                    type: string
                                                    description: "Indicates whether the business has experienced suspicious activity (including previous fraud) on the payment user’s account. Accepted values: 01 = No record of suspicious activity, 02 = Record of suspicious activity"
                                                    example: 01
                                        merchantRiskIndicator:
                                            type: object
                                            description: Node with additional information of the business representing the evaluation of the level of risk of fraud for authentication. The delivery of this information is highly recommended
                                            properties:
                                                deliveryEmailAddress:
                                                    type: string
                                                    description: For electronic delivery, the email address to which the goods were delivered
                                                    example: jdoe@myemail.com
                                                deliveryTimeframe:
                                                    type: string
                                                    description: "Indicates the delivery period of the goods. Accepted values: 01 = Electronic delivery, 02 = Delivery on the same day, 03 = 24 hour delivery, 04 = Delivery in 2 days or more"
                                                    example: 04
                                                giftCardAmount:
                                                    type: string
                                                    description: "For purchases from prepaid cards or gift cards, the total amount of the purchase in major units (for example, USD 123.45 is 123)"
                                                    example: 123
                                                giftCardCount:
                                                    type: integer
                                                    description: For purchases from prepaid cards or gift cards, total count of prepaid cards or gift cards/gift codes purchased
                                                    example: 1
                                                giftCardCurr:
                                                    type: string
                                                    description: "For the purchase of prepaid/gift cards, code ISO-4217 of currency of the card"
                                                    example: 840
                                                preOrderDate:
                                                    type: string
                                                    description: "For a pre-ordered purchase, the forecast availability date of the goods. Date format: YYYYMMDD"
                                                    example: 20201001
                                                preOrderPurchaseInd:
                                                    type: string
                                                    description: "Indicates whether the customer makes an order with availability or future launch date. Accepted values: 01 = Goods available, 02 = Future availability"
                                                    example: 01
                                                reorderItemsInd:
                                                    type: string
                                                    description: "Indicates whether the card is reordering previously purchased goods. Accepted values: 01 = First time purchased, 02 = Previously purchased"
                                                    example: 01
                                                shipIndicator:
                                                    type: string
                                                    description: "Indicates the delivery method selected for the transaction. Businesses must select the delivery indicator code which more precisely describes the specific transaction of the payment user, not their general commercial activity. If one or more items are included in the sale, use the delivery Indicator code for physical goods, or if all products are digital, use the delivery Indicator code which describes the most expensive item. Accepted values: 01 = Delivery to the invoice address of the customer, 02 = Delivery to another verified address of the client, 03 = Delivery to an address other than that of the customer’s invoice address, 04 = Delivery to the store or collection at premises (the address of the store will be stored in the delivery address fields), 05 = Digital goods (includes online services, electronic gift cards and discount coupons), 06 = Tickets for events and trips, without delivery, 07 = Other (for example, games, digital services without delivery, subscriptions to online services, etc.)"
                                                    example: 03
                                        threeDSRequestorAuthenticationInfo:
                                            type: object
                                            description: Node with additional information on how the client was authenticated at the start of the session in the business account
                                            properties:
                                                threeDSReqAuthData:
                                                    type: string
                                                    description: Data which documents and supports a specific authentication process.
                                                threeDSReqAuthMethod:
                                                    type: string
                                                    description: "Mechanism used by the customer to authenticate themselves in the business. Accepted values: 01 = Without 3DS authentication (for example, customer identified as guest), 02 = Logged onto the account on the ACS using the credentials of the ACS, 03 = Logged onto the account on the ACS using an affiliate identifier, 04 = Logged onto the account on the ACS using the credentials of the issuer, 05 = Logged onto the account on the ACS using a third party authentication, 06 = Logged onto the account on the ACS using a FIDO authenticator"
                                                    example: 01
                                                threeDSReqAuthTimestamp:
                                                    type: string
                                                    description: "Date and time UTC of the authentication. Date format: YYYYMMDDHHMM"
                                                    example: 20200612113044
                                        shoppingCart:
                                            type: array
                                            items:
                                                type: object
                                                description: Node with the list of items purchased in the store
                                                properties:
                                                    sku:
                                                        type: string
                                                        description: Product identifier
                                                        example: CODE-01
                                                    quantity:
                                                        type: integer
                                                        description: Units of product purchased
                                                        example: 1
                                                    unitPrice:
                                                        type: integer
                                                        description: unit amount of each product in integer format. 1.00 EURO = 100, 4.50 EUROS = 450, etc.
                                                        example: 295
                                                    name:
                                                        type: string
                                                        description: Product name
                                                        example: Product 01
                                                    category:
                                                        type: string
                                                        description: Product category
                                                        example: Internet gift card
                                                    articleType:
                                                        type: integer
                                                        description: article type (4 = Discount, 5 = Physical, 6 = Shipping_fee, 7 = Sales_tax, 8 = Digital, 9 = Gift_card, 10 = Store_credit, 11 = Surcharge)
                                                        example: 8
                                        addrMatch:
                                            type: string
                                            description: "Indicates whether the delivery address is the same as the invoice address. Y = The delivery address is the same as the invoicing address, N = The delivery and invoice addresses are different"
                                            example: Y
                                        purchaseInstalData:
                                            type: integer
                                            description: "Mandatory for Instalment operations (MERCHANT_TRX_TYPE = I). Indicates the maximum number of deferred payment authorizations. Accepted values: The value must be greater than 1"
                                        recurringExpiry:
                                            type: string
                                            description: "Mandatory for Recurring and Instalment operations (MERCHANT_TRX_TYPE = I or R). The date from which there will be no more authorizations. Accepted format: YYYYMMDD"
                                            example: 20200612
                                        recurringFrequency:
                                            type: string
                                            description: "Mandatory for Recurring and Instalment operations (MERCHANT_TRX_TYPE = I or R). Indicates the minimum number of days between authorizations"
                                            example: 4
                            required:
                                - terminal
                                - order
                                - amount
                                - currency
                                - originalIp
                                - methodId
                                - secure
                                - language
                                - smsEmail
                                - templateId
                        examples:
                            example-1: {}
                description: ''
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  description: PAYCOMET API key (Authorization privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/launchpad/preauthorization:
        post:
            summary: Executes a preauthorization link and sends it to customer
            tags:
                - launchpad
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            operationId: launchPreauthorization
            security:
                - paycometApiKey: []
            description: 'Generate a preauthorization link. It will send a challenge URL to the client.'
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                                    description: Product or terminal Id.
                                order:
                                    type: string
                                    example: "PAY987654321"
                                    description: "Unique reference for merchant's purchase"
                                amount:
                                    type: string
                                    example: "202"
                                    description: 'Amount of the operation in number format. 1.00 EURO = 100, 4.50 EUROS = 450...'
                                currency:
                                    type: string
                                    example: "EUR"
                                    description: 'Currency of the transaction. '
                                methodId:
                                    type: string
                                    example: 1
                                    description: PAYCOMET payment method ID. 1 is for card.
                                originalIp:
                                    type: string
                                    example: "127.0.0.1"
                                    description: IP Address of the customer that initiated the payment transaction
                                secure:
                                    type: integer
                                    example: 1
                                    description: 0 or 1. Indicates if the transaction is secure.
                                language:
                                    type: string
                                    description: ISO2 code of language.
                                    default: 'es'
                                    example: 'en'
                                smsEmail:
                                    type: string
                                    description: Sending channel of the payment url. Should be "sms" or "email".
                                    example: "email"
                                templateId:
                                    type: integer
                                    description: Email or SMS template id to be sent. You can get it in the Control panel.
                                    example: 1234
                                emailAddress:
                                    type: string
                                    description: Conditional. Mandatory in sending method is EMAIL. Email address where link must be sent
                                    example: "johndoe@paycomet.com"
                                emailName:
                                    type: string
                                    description: Conditional. Mandatory in sending method is EMAIL. Email recipient of the email address where link must be sent
                                    example: "John Doe"
                                smsPrefix:
                                    type: string
                                    description: Conditional. Mandatory in sending method is SMS. International mobile prefix where link must be sent
                                    example: "+34"
                                smsNumber:
                                    type: string
                                    description: Conditional. Mandatory in sending method is SMS. Mobile number where link must be sent
                                    example: "654321123"
                                expiryDate:
                                    type: string
                                    description: Optional. Link expiration date. Format YYYYMMDD
                                    example: "20231217"
                                expiryHour:
                                    type: string
                                    description: Optional. Link expiration hour. Format HH
                                    example: "16"
                                expiryMinute:
                                    type: string
                                    description: Optional. Link expiration minute. Format MM
                                    example: "45"
                                scoring:
                                    type: string
                                    description: Risk scoring value from 0 to 100.
                                productDescription:
                                    type: string
                                    example: "Random product"
                                    description: Description of the product sold.
                                # escrowTargets:
                                #    type: array
                                #    items:
                                #      type: object
                                #      description: Optional Identification of the recipients of receipts in ESCROW operations
                                #      properties:
                                #        id:
                                #          type: string
                                #          description: Recipient identifier
                                #          example: 123
                                #        amount:
                                #          type: integer
                                #          description: "Recipient' amount in number format. 1.00 EURO = 100, 4.50 EUROS = 450..."
                                #          example: 100
                                trxType:
                                    type: string
                                    description: Obligatory only if an MIT exception has been selected in scaException
                                scaException:
                                    type: string
                                    description: 'TYPE OF EXCEPTION TO THE SECURE PAYMENT. If not specified, PAYCOMET will try to assign it the most appropriate possible'
                                merchantData:
                                    type: object
                                    description: 'Client authentication information. The more information is provided in this field, the more likely the authorization of the operation will be without requiring additional authentication. For this reason, it is recommended to send as much information as possible.'
                                    properties:
                                        customer:
                                            type: object
                                            properties:
                                                id:
                                                    type: integer
                                                    description: Store customer identifier
                                                    example: 12345678
                                                name:
                                                    type: string
                                                    description: Name of customer
                                                    example: John
                                                surname:
                                                    type: string
                                                    description: Surname of customer
                                                    example: Doe
                                                email:
                                                    type: string
                                                    description: Email of customer
                                                    example: jdoe@myemail.com
                                                homePhone:
                                                    type: object
                                                    description: Node with user home phone data
                                                    properties:
                                                        cc:
                                                            type: integer
                                                            description: "International dialling code of the customer’s home telephone number"
                                                            example: 34
                                                        subscriber:
                                                            type: integer
                                                            description: "Customer’s home telephone number"
                                                            example: 91820332211
                                                mobilePhone:
                                                    type: object
                                                    description: Node with user mobile phone data
                                                    properties:
                                                        cc:
                                                            type: integer
                                                            description: "International dialling code of the customer’s mobile telephone number"
                                                            example: 34
                                                        subscriber:
                                                            type: integer
                                                            description: "Customer’s mobile telephone number"
                                                            example: 640456999
                                                workPhone:
                                                    type: object
                                                    description: Node with user work phone data
                                                    properties:
                                                        cc:
                                                            type: integer
                                                            description: "International dialling code of the customer’s work telephone number"
                                                            example: 34
                                                        subscriber:
                                                            type: integer
                                                            description: "Customer’s work telephone number"
                                                            example: 913984300
                                                firstBuy:
                                                    type: string
                                                    description: Indicates whether the user has already bought in this business ('si' if has made a operation, 'no' in opposite scenario)
                                        shipping:
                                            type: object
                                            description: Node with shipping address related information.
                                            properties:
                                                shipAddrCity:
                                                    type: string
                                                    description: City of delivery address.
                                                    example: Springfield
                                                shipAddrCountry:
                                                    type: string
                                                    description: Numerical code (ISO 3166-1) of the country of the delivery address
                                                    example: 840
                                                shipAddrLine1:
                                                    type: string
                                                    description: Delivery address, line 1
                                                    example: 742 Evergreen Terrace
                                                shipAddrLine2:
                                                    type: string
                                                    description: Delivery address, line 2
                                                shipAddrLine3:
                                                    type: string
                                                    description: Delivery address, line 3
                                                shipAddrPostCode:
                                                    type: string
                                                    description: Post code of the delivery address
                                                    example: 89011
                                                shipAddrState:
                                                    type: string
                                                    description: State or province of the delivery address. Must comply with ISO 3166-2.
                                                    example: Z
                                        billing:
                                            type: object
                                            properties:
                                                billAddrCity:
                                                    type: string
                                                    description: City of delivery address.
                                                    example: Scranton
                                                billAddrCountry:
                                                    type: string
                                                    description: Numerical code (ISO 3166-1) of the country of the delivery address
                                                    example: 840
                                                billAddrLine1:
                                                    type: string
                                                    description: Delivery address, line 1
                                                    example: 1725 Slough Avenue
                                                billAddrLine2:
                                                    type: string
                                                    description: Delivery address, line 2
                                                billAddrLine3:
                                                    type: string
                                                    description: Delivery address, line 3
                                                billAddrPostCode:
                                                    type: string
                                                    description: Post code of the delivery address
                                                    example: 18501
                                                billAddrState:
                                                    type: string
                                                    description: State or province of the delivery address. Must comply with ISO 3166-2.
                                                    example: Z
                                        acctID:
                                            type: string
                                            description: Additional information you want to send to identify the account
                                        acctInfo:
                                            type: object
                                            description: Node with additional information on the user account at the store
                                            properties:
                                                chAccAgeInd:
                                                    type: string
                                                    description: "Period of time that the customer has had the account at the business. Possible values: 01 = No account (checkout as guest), 02 = Created in this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                    example: 05
                                                chAccChange:
                                                    type: string
                                                    description: "Date on which the user account with the business was last modified, including the invoice or delivery address, the new payment account or new added users. Date format: YYYYMMDD"
                                                    example: 20200704
                                                chAccChangeInd:
                                                    type: string
                                                    description: "Period of time passed since the payment user’s account with the business was last modified, including the invoice or delivery address, the new payment account or new added users. Accepted values: 01 = Modified in this transaction, 02 = Under 30 days, 03 = 30-60 days, 04 = Over 60 days"
                                                    example: 03
                                                chAccDate:
                                                    type: string
                                                    description: "Date on which the payment user opened the account with the business. Date format: YYYYMMDD"
                                                    example: 20191225
                                                chAccPwChange:
                                                    type: string
                                                    description: "Date on which the payment user changed the password of their account with the business, or reset their account. Date format: YYYYMMDD"
                                                    example: 20191225
                                                chAccPwChangeInd:
                                                    type: string
                                                    description: "Indicates the period of time since the payment user’s account with the business changed its password or was reset. Accepted values: 01 = No changes, 02 = Changed during this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                    example: 01
                                                nbPurchaseAccount:
                                                    type: integer
                                                    description: Number of purchases with this account during the last six months
                                                    example: 2
                                                provisionAttemptsDay:
                                                    type: integer
                                                    description: Number of attempts to add a card in the last 24 hours
                                                    example: 0
                                                txnActivityDay:
                                                    type: string
                                                    description: Number of transactions (successful and abandoned) for this account with the business in all payment accounts in the last 24 hours
                                                    example: 0
                                                txnActivityYear:
                                                    type: string
                                                    description: Number of transactions (successful and abandoned) for this account of the payment user with the business in all payment accounts of the last year
                                                    example: 3
                                                paymentAccAge:
                                                    type: string
                                                    description: Date on which the payment account was registered on the payment user’s account with the business.
                                                    example: 20191228
                                                paymentAccInd:
                                                    type: string
                                                    description: "Indicates the period of time which the payment account was registered on the payment user’s account with the business. Accepted values: 01 = No account (checkout as guest), 02 = During this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                    example: 05
                                                shipAddressUsage:
                                                    type: string
                                                    description: "Date on which the delivery address used for this transaction was used for the first time with the business. Date format: YYYYMMDD"
                                                    example: 20191228
                                                shipAddressUsageInd:
                                                    type: string
                                                    description: "Indicates when the delivery address used for this transaction was used for the first time with the business. Accepted values: 01 = This transaction, 02 = Under 30 days, 03 = Between 30 and 60 days, 04 = Over 60 days"
                                                    example: 03
                                                shipNameIndicator:
                                                    type: string
                                                    description: "Indicates whether the name of the payment user on the account is identical to the delivery name used for this transaction. Accepted values: 01 = Name on the account identical to the delivery name, 02 = Name on the account different from the delivery name"
                                                    example: 01
                                                suspiciousAccActivity:
                                                    type: string
                                                    description: "Indicates whether the business has experienced suspicious activity (including previous fraud) on the payment user’s account. Accepted values: 01 = No record of suspicious activity, 02 = Record of suspicious activity"
                                                    example: 01
                                        merchantRiskIndicator:
                                            type: object
                                            description: Node with additional information of the business representing the evaluation of the level of risk of fraud for authentication. The delivery of this information is highly recommended
                                            properties:
                                                deliveryEmailAddress:
                                                    type: string
                                                    description: For electronic delivery, the email address to which the goods were delivered
                                                    example: jdoe@myemail.com
                                                deliveryTimeframe:
                                                    type: string
                                                    description: "Indicates the delivery period of the goods. Accepted values: 01 = Electronic delivery, 02 = Delivery on the same day, 03 = 24 hour delivery, 04 = Delivery in 2 days or more"
                                                    example: 04
                                                giftCardAmount:
                                                    type: string
                                                    description: "For purchases from prepaid cards or gift cards, the total amount of the purchase in major units (for example, USD 123.45 is 123)"
                                                    example: 123
                                                giftCardCount:
                                                    type: integer
                                                    description: For purchases from prepaid cards or gift cards, total count of prepaid cards or gift cards/gift codes purchased
                                                    example: 1
                                                giftCardCurr:
                                                    type: string
                                                    description: "For the purchase of prepaid/gift cards, code ISO-4217 of currency of the card"
                                                    example: 840
                                                preOrderDate:
                                                    type: string
                                                    description: "For a pre-ordered purchase, the forecast availability date of the goods. Date format: YYYYMMDD"
                                                    example: 20201001
                                                preOrderPurchaseInd:
                                                    type: string
                                                    description: "Indicates whether the customer makes an order with availability or future launch date. Accepted values: 01 = Goods available, 02 = Future availability"
                                                    example: 01
                                                reorderItemsInd:
                                                    type: string
                                                    description: "Indicates whether the card is reordering previously purchased goods. Accepted values: 01 = First time purchased, 02 = Previously purchased"
                                                    example: 01
                                                shipIndicator:
                                                    type: string
                                                    description: "Indicates the delivery method selected for the transaction. Businesses must select the delivery indicator code which more precisely describes the specific transaction of the payment user, not their general commercial activity. If one or more items are included in the sale, use the delivery Indicator code for physical goods, or if all products are digital, use the delivery Indicator code which describes the most expensive item. Accepted values: 01 = Delivery to the invoice address of the customer, 02 = Delivery to another verified address of the client, 03 = Delivery to an address other than that of the customer’s invoice address, 04 = Delivery to the store or collection at premises (the address of the store will be stored in the delivery address fields), 05 = Digital goods (includes online services, electronic gift cards and discount coupons), 06 = Tickets for events and trips, without delivery, 07 = Other (for example, games, digital services without delivery, subscriptions to online services, etc.)"
                                                    example: 03
                                        threeDSRequestorAuthenticationInfo:
                                            type: object
                                            description: Node with additional information on how the client was authenticated at the start of the session in the business account
                                            properties:
                                                threeDSReqAuthData:
                                                    type: string
                                                    description: Data which documents and supports a specific authentication process.
                                                threeDSReqAuthMethod:
                                                    type: string
                                                    description: "Mechanism used by the customer to authenticate themselves in the business. Accepted values: 01 = Without 3DS authentication (for example, customer identified as guest), 02 = Logged onto the account on the ACS using the credentials of the ACS, 03 = Logged onto the account on the ACS using an affiliate identifier, 04 = Logged onto the account on the ACS using the credentials of the issuer, 05 = Logged onto the account on the ACS using a third party authentication, 06 = Logged onto the account on the ACS using a FIDO authenticator"
                                                    example: 01
                                                threeDSReqAuthTimestamp:
                                                    type: string
                                                    description: "Date and time UTC of the authentication. Date format: YYYYMMDDHHMM"
                                                    example: 20200612113044
                                        shoppingCart:
                                            type: array
                                            items:
                                                type: object
                                                description: Node with the list of items purchased in the store
                                                properties:
                                                    sku:
                                                        type: string
                                                        description: Product identifier
                                                        example: CODE-01
                                                    quantity:
                                                        type: integer
                                                        description: Units of product purchased
                                                        example: 1
                                                    unitPrice:
                                                        type: integer
                                                        description: unit amount of each product in integer format. 1.00 EURO = 100, 4.50 EUROS = 450, etc.
                                                        example: 295
                                                    name:
                                                        type: string
                                                        description: Product name
                                                        example: Product 01
                                                    category:
                                                        type: string
                                                        description: Product category
                                                        example: Internet gift card
                                                    articleType:
                                                        type: integer
                                                        description: article type (4 = Discount, 5 = Physical, 6 = Shipping_fee, 7 = Sales_tax, 8 = Digital, 9 = Gift_card, 10 = Store_credit, 11 = Surcharge)
                                                        example: 8
                                        addrMatch:
                                            type: string
                                            description: "Indicates whether the delivery address is the same as the invoice address. Y = The delivery address is the same as the invoicing address, N = The delivery and invoice addresses are different"
                                            example: Y
                                        purchaseInstalData:
                                            type: integer
                                            description: "Mandatory for Instalment operations (MERCHANT_TRX_TYPE = I). Indicates the maximum number of deferred payment authorizations. Accepted values: The value must be greater than 1"
                                        recurringExpiry:
                                            type: string
                                            description: "Mandatory for Recurring and Instalment operations (MERCHANT_TRX_TYPE = I or R). The date from which there will be no more authorizations. Accepted format: YYYYMMDD"
                                            example: 20200612
                                        recurringFrequency:
                                            type: string
                                            description: "Mandatory for Recurring and Instalment operations (MERCHANT_TRX_TYPE = I or R). Indicates the minimum number of days between authorizations"
                                            example: 4
                            required:
                                - terminal
                                - order
                                - amount
                                - currency
                                - originalIp
                                - methodId
                                - secure
                                - language
                                - smsEmail
                                - templateId
                        examples:
                            example-1: {}
                description: ''
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  description: PAYCOMET API key (Authorization privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/launchpad/subscription:
        post:
            summary: Creates a subscription link and sends it to customer
            tags:
                - launchpad
            responses:
                '200':
                    description: OK
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 0
                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            operationId: launchSubscription
            security:
                - paycometApiKey: []
            description: 'Generate a subscription link. It will send a challenge URL to the client.'
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                                    description: Product or terminal Id.
                                order:
                                    type: string
                                    example: "PAY987654321"
                                    description: "Unique reference for merchant's purchase"
                                amount:
                                    type: string
                                    example: "202"
                                    description: 'Amount of the operation in number format. 1.00 EURO = 100, 4.50 EUROS = 450...'
                                currency:
                                    type: string
                                    example: "EUR"
                                    description: 'Currency of the transaction. '
                                methodId:
                                    type: string
                                    example: 1
                                    description: PAYCOMET payment method ID. 1 is for card.
                                originalIp:
                                    type: string
                                    example: "127.0.0.1"
                                    description: IP Address of the customer that initiated the payment transaction
                                secure:
                                    type: integer
                                    example: 1
                                    description: 0 or 1. Indicates if the transaction is secure.
                                language:
                                    type: string
                                    description: ISO2 code of language.
                                    default: 'es'
                                    example: 'en'
                                smsEmail:
                                    type: string
                                    description: Sending channel of the payment url. Should be "sms" or "email".
                                    example: "email"
                                templateId:
                                    type: integer
                                    description: Email or SMS template id to be sent. You can get it in the Control panel.
                                    example: 1234
                                emailAddress:
                                    type: string
                                    description: Conditional. Mandatory in sending method is EMAIL. Email address where link must be sent
                                    example: "johndoe@paycomet.com"
                                emailName:
                                    type: string
                                    description: Conditional. Mandatory in sending method is EMAIL. Email recipient of the email address where link must be sent
                                    example: "John Doe"
                                smsPrefix:
                                    type: string
                                    description: Conditional. Mandatory in sending method is SMS. International mobile prefix where link must be sent
                                    example: "+34"
                                smsNumber:
                                    type: string
                                    description: Conditional. Mandatory in sending method is SMS. Mobile number where link must be sent
                                    example: "654321123"
                                expiryDate:
                                    type: string
                                    description: Optional. Link expiration date. Format YYYYMMDD
                                    example: "20231217"
                                expiryHour:
                                    type: string
                                    description: Optional. Link expiration hour. Format HH
                                    example: "16"
                                expiryMinute:
                                    type: string
                                    description: Optional. Link expiration minute. Format MM
                                    example: "45"
                                scoring:
                                    type: string
                                    description: Risk scoring value from 0 to 100.
                                startDate:
                                    type: string
                                    description: Subscription start date yyyymmdd. IMPORTANT Subscriptions are charged on the first run if this field has value it will be taken into account for future charges.
                                    example: "20300615"
                                endDate:
                                    type: string
                                    description: Subscription end date yyyymmdd
                                    example: "20310631"
                                periodicity:
                                    type: string
                                    description: Subscription periodicity in days. Maximum 365.
                                    example: "30"
                                merchantData:
                                    type: object
                                    description: 'Client authentication information. The more information is provided in this field, the more likely the authorization of the operation will be without requiring additional authentication. For this reason, it is recommended to send as much information as possible.'
                                    properties:
                                        customer:
                                            type: object
                                            properties:
                                                id:
                                                    type: integer
                                                    description: Store customer identifier
                                                    example: 12345678
                                                name:
                                                    type: string
                                                    description: Name of customer
                                                    example: John
                                                surname:
                                                    type: string
                                                    description: Surname of customer
                                                    example: Doe
                                                email:
                                                    type: string
                                                    description: Email of customer
                                                    example: jdoe@myemail.com
                                                homePhone:
                                                    type: object
                                                    description: Node with user home phone data
                                                    properties:
                                                        cc:
                                                            type: integer
                                                            description: "International dialling code of the customer’s home telephone number"
                                                            example: 34
                                                        subscriber:
                                                            type: integer
                                                            description: "Customer’s home telephone number"
                                                            example: 91820332211
                                                mobilePhone:
                                                    type: object
                                                    description: Node with user mobile phone data
                                                    properties:
                                                        cc:
                                                            type: integer
                                                            description: "International dialling code of the customer’s mobile telephone number"
                                                            example: 34
                                                        subscriber:
                                                            type: integer
                                                            description: "Customer’s mobile telephone number"
                                                            example: 640456999
                                                workPhone:
                                                    type: object
                                                    description: Node with user work phone data
                                                    properties:
                                                        cc:
                                                            type: integer
                                                            description: "International dialling code of the customer’s work telephone number"
                                                            example: 34
                                                        subscriber:
                                                            type: integer
                                                            description: "Customer’s work telephone number"
                                                            example: 913984300
                                                firstBuy:
                                                    type: string
                                                    description: Indicates whether the user has already bought in this business ('si' if has made a operation, 'no' in opposite scenario)
                                        shipping:
                                            type: object
                                            description: Node with shipping address related information.
                                            properties:
                                                shipAddrCity:
                                                    type: string
                                                    description: City of delivery address.
                                                    example: Springfield
                                                shipAddrCountry:
                                                    type: integer
                                                    description: Numerical code (ISO 3166-1) of the country of the delivery address
                                                    example: 840
                                                shipAddrLine1:
                                                    type: string
                                                    description: Delivery address, line 1
                                                    example: 742 Evergreen Terrace
                                                shipAddrLine2:
                                                    type: string
                                                    description: Delivery address, line 2
                                                shipAddrLine3:
                                                    type: string
                                                    description: Delivery address, line 3
                                                shipAddrPostCode:
                                                    type: string
                                                    description: Post code of the delivery address
                                                    example: 89011
                                                shipAddrState:
                                                    type: string
                                                    description: State or province of the delivery address. Must comply with ISO 3166-2.
                                                    example: Z
                                        billing:
                                            type: object
                                            properties:
                                                billAddrCity:
                                                    type: string
                                                    description: City of delivery address.
                                                    example: Scranton
                                                billAddrCountry:
                                                    type: string
                                                    description: Numerical code (ISO 3166-1) of the country of the delivery address
                                                    example: 840
                                                billAddrLine1:
                                                    type: string
                                                    description: Delivery address, line 1
                                                    example: 1725 Slough Avenue
                                                billAddrLine2:
                                                    type: string
                                                    description: Delivery address, line 2
                                                billAddrLine3:
                                                    type: string
                                                    description: Delivery address, line 3
                                                billAddrPostCode:
                                                    type: string
                                                    description: Post code of the delivery address
                                                    example: 18501
                                                billAddrState:
                                                    type: string
                                                    description: State or province of the delivery address. Must comply with ISO 3166-2.
                                                    example: Z
                                        acctID:
                                            type: string
                                            description: Additional information you want to send to identify the account
                                        acctInfo:
                                            type: object
                                            description: Node with additional information on the user account at the store
                                            properties:
                                                chAccAgeInd:
                                                    type: string
                                                    description: "Period of time that the customer has had the account at the business. Possible values: 01 = No account (checkout as guest), 02 = Created in this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                    example: 05
                                                chAccChange:
                                                    type: string
                                                    description: "Date on which the user account with the business was last modified, including the invoice or delivery address, the new payment account or new added users. Date format: YYYYMMDD"
                                                    example: 20200704
                                                chAccChangeInd:
                                                    type: string
                                                    description: "Period of time passed since the payment user’s account with the business was last modified, including the invoice or delivery address, the new payment account or new added users. Accepted values: 01 = Modified in this transaction, 02 = Under 30 days, 03 = 30-60 days, 04 = Over 60 days"
                                                    example: 03
                                                chAccDate:
                                                    type: string
                                                    description: "Date on which the payment user opened the account with the business. Date format: YYYYMMDD"
                                                    example: 20191225
                                                chAccPwChange:
                                                    type: string
                                                    description: "Date on which the payment user changed the password of their account with the business, or reset their account. Date format: YYYYMMDD"
                                                    example: 20191225
                                                chAccPwChangeInd:
                                                    type: string
                                                    description: "Indicates the period of time since the payment user’s account with the business changed its password or was reset. Accepted values: 01 = No changes, 02 = Changed during this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                    example: 01
                                                nbPurchaseAccount:
                                                    type: integer
                                                    description: Number of purchases with this account during the last six months
                                                    example: 2
                                                provisionAttemptsDay:
                                                    type: integer
                                                    description: Number of attempts to add a card in the last 24 hours
                                                    example: 0
                                                txnActivityDay:
                                                    type: string
                                                    description: Number of transactions (successful and abandoned) for this account with the business in all payment accounts in the last 24 hours
                                                    example: 0
                                                txnActivityYear:
                                                    type: string
                                                    description: Number of transactions (successful and abandoned) for this account of the payment user with the business in all payment accounts of the last year
                                                    example: 3
                                                paymentAccAge:
                                                    type: string
                                                    description: Date on which the payment account was registered on the payment user’s account with the business.
                                                    example: 20191228
                                                paymentAccInd:
                                                    type: string
                                                    description: "Indicates the period of time which the payment account was registered on the payment user’s account with the business. Accepted values: 01 = No account (checkout as guest), 02 = During this transaction, 03 = Under 30 days, 04 = Between 30 and 60 days, 05 = Over 60 days"
                                                    example: 05
                                                shipAddressUsage:
                                                    type: string
                                                    description: "Date on which the delivery address used for this transaction was used for the first time with the business. Date format: YYYYMMDD"
                                                    example: 20191228
                                                shipAddressUsageInd:
                                                    type: string
                                                    description: "Indicates when the delivery address used for this transaction was used for the first time with the business. Accepted values: 01 = This transaction, 02 = Under 30 days, 03 = Between 30 and 60 days, 04 = Over 60 days"
                                                    example: 03
                                                shipNameIndicator:
                                                    type: string
                                                    description: "Indicates whether the name of the payment user on the account is identical to the delivery name used for this transaction. Accepted values: 01 = Name on the account identical to the delivery name, 02 = Name on the account different from the delivery name"
                                                    example: 01
                                                suspiciousAccActivity:
                                                    type: string
                                                    description: "Indicates whether the business has experienced suspicious activity (including previous fraud) on the payment user’s account. Accepted values: 01 = No record of suspicious activity, 02 = Record of suspicious activity"
                                                    example: 01
                                        merchantRiskIndicator:
                                            type: object
                                            description: Node with additional information of the business representing the evaluation of the level of risk of fraud for authentication. The delivery of this information is highly recommended
                                            properties:
                                                deliveryEmailAddress:
                                                    type: string
                                                    description: For electronic delivery, the email address to which the goods were delivered
                                                    example: jdoe@myemail.com
                                                deliveryTimeframe:
                                                    type: string
                                                    description: "Indicates the delivery period of the goods. Accepted values: 01 = Electronic delivery, 02 = Delivery on the same day, 03 = 24 hour delivery, 04 = Delivery in 2 days or more"
                                                    example: 04
                                                giftCardAmount:
                                                    type: string
                                                    description: "For purchases from prepaid cards or gift cards, the total amount of the purchase in major units (for example, USD 123.45 is 123)"
                                                    example: 123
                                                giftCardCount:
                                                    type: integer
                                                    description: For purchases from prepaid cards or gift cards, total count of prepaid cards or gift cards/gift codes purchased
                                                    example: 1
                                                giftCardCurr:
                                                    type: string
                                                    description: "For the purchase of prepaid/gift cards, code ISO-4217 of currency of the card"
                                                    example: 840
                                                preOrderDate:
                                                    type: string
                                                    description: "For a pre-ordered purchase, the forecast availability date of the goods. Date format: YYYYMMDD"
                                                    example: 20201001
                                                preOrderPurchaseInd:
                                                    type: string
                                                    description: "Indicates whether the customer makes an order with availability or future launch date. Accepted values: 01 = Goods available, 02 = Future availability"
                                                    example: 01
                                                reorderItemsInd:
                                                    type: string
                                                    description: "Indicates whether the card is reordering previously purchased goods. Accepted values: 01 = First time purchased, 02 = Previously purchased"
                                                    example: 01
                                                shipIndicator:
                                                    type: string
                                                    description: "Indicates the delivery method selected for the transaction. Businesses must select the delivery indicator code which more precisely describes the specific transaction of the payment user, not their general commercial activity. If one or more items are included in the sale, use the delivery Indicator code for physical goods, or if all products are digital, use the delivery Indicator code which describes the most expensive item. Accepted values: 01 = Delivery to the invoice address of the customer, 02 = Delivery to another verified address of the client, 03 = Delivery to an address other than that of the customer’s invoice address, 04 = Delivery to the store or collection at premises (the address of the store will be stored in the delivery address fields), 05 = Digital goods (includes online services, electronic gift cards and discount coupons), 06 = Tickets for events and trips, without delivery, 07 = Other (for example, games, digital services without delivery, subscriptions to online services, etc.)"
                                                    example: 03
                                        threeDSRequestorAuthenticationInfo:
                                            type: object
                                            description: Node with additional information on how the client was authenticated at the start of the session in the business account
                                            properties:
                                                threeDSReqAuthData:
                                                    type: string
                                                    description: Data which documents and supports a specific authentication process.
                                                threeDSReqAuthMethod:
                                                    type: string
                                                    description: "Mechanism used by the customer to authenticate themselves in the business. Accepted values: 01 = Without 3DS authentication (for example, customer identified as guest), 02 = Logged onto the account on the ACS using the credentials of the ACS, 03 = Logged onto the account on the ACS using an affiliate identifier, 04 = Logged onto the account on the ACS using the credentials of the issuer, 05 = Logged onto the account on the ACS using a third party authentication, 06 = Logged onto the account on the ACS using a FIDO authenticator"
                                                    example: 01
                                                threeDSReqAuthTimestamp:
                                                    type: string
                                                    description: "Date and time UTC of the authentication. Date format: YYYYMMDDHHMM"
                                                    example: 20200612113044
                                        shoppingCart:
                                            type: array
                                            items:
                                                type: object
                                                description: Node with the list of items purchased in the store
                                                properties:
                                                    sku:
                                                        type: string
                                                        description: Product identifier
                                                        example: CODE-01
                                                    quantity:
                                                        type: integer
                                                        description: Units of product purchased
                                                        example: 1
                                                    unitPrice:
                                                        type: integer
                                                        description: unit amount of each product in integer format. 1.00 EURO = 100, 4.50 EUROS = 450, etc.
                                                        example: 295
                                                    name:
                                                        type: string
                                                        description: Product name
                                                        example: Product 01
                                                    category:
                                                        type: string
                                                        description: Product category
                                                        example: Internet gift card
                                                    articleType:
                                                        type: integer
                                                        description: article type (4 = Discount, 5 = Physical, 6 = Shipping_fee, 7 = Sales_tax, 8 = Digital, 9 = Gift_card, 10 = Store_credit, 11 = Surcharge)
                                                        example: 8
                                        addrMatch:
                                            type: string
                                            description: "Indicates whether the delivery address is the same as the invoice address. Y = The delivery address is the same as the invoicing address, N = The delivery and invoice addresses are different"
                                            example: Y
                                        purchaseInstalData:
                                            type: integer
                                            description: "Mandatory for Instalment operations (MERCHANT_TRX_TYPE = I). Indicates the maximum number of deferred payment authorizations. Accepted values: The value must be greater than 1"
                                        recurringExpiry:
                                            type: string
                                            description: "Mandatory for Recurring and Instalment operations (MERCHANT_TRX_TYPE = I or R). The date from which there will be no more authorizations. Accepted format: YYYYMMDD"
                                            example: 20200612
                                        recurringFrequency:
                                            type: string
                                            description: "Mandatory for Recurring and Instalment operations (MERCHANT_TRX_TYPE = I or R). Indicates the minimum number of days between authorizations"
                                            example: 4
                            required:
                                - terminal
                                - order
                                - amount
                                - currency
                                - originalIp
                                - methodId
                                - secure
                                - language
                                - smsEmail
                                - templateId
                        examples:
                            example-1: {}
                description: ''
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  description: PAYCOMET API key (Authorization privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
    /v1/token:
        post:
            summary: Tokenizes an APM.
            tags:
                - token
            responses:
                '200':
                    description: Created
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    idUser:
                                        type: integer
                                        example: 12345678
                                    tokenUser:
                                        type: string
                                        example: "WHlSWmVDdzVQeUZ"
                                    challengeUrl:
                                        type: string
                                        example: "https://challenge.paycomet.com/ijDXT3en8g8mCeR3"
                                    errorCode:
                                        type: integer
                                        example: 0

                '422':
                    description: Unprocessable Entity
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    errorCode:
                                        type: integer
                                        example: 133
                                    error:
                                        type: object
                                        properties:
                                            message:
                                                type: string
                                            detail:
                                                type: array
                                                items: {}
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                terminal:
                                    type: integer
                                    description: Product or terminal Id.
                                methodId:
                                    type: integer
                                    example: 10
                                    description: PAYCOMET payment method ID.
                                order:
                                    type: string
                                    example: "PAY987654321"
                                    description: "Reference, will be included in callback."
                                productDescription:
                                    type: string
                                    example: "Random product"
                                    description: "Concept, will be included in callback."
                                language:
                                    type: string
                                    description: "Language for callback translation."
                                    example: "fr"
                                    default: "es"
                            required:
                                - terminal
                                - methodId
                                - order
                description: ''
            description: This method supposes the registration of the APM in PAYCOMET for subsequent charges.
            security:
                - paycometApiKey: []
            operationId: addToken
            parameters:
                - name: PAYCOMET-API-TOKEN
                  in: header
                  description: PAYCOMET API key (Token actions privilege required)
                  schema:
                      type: string
                      example: "27ce3b8ab7b31a03ec7ce2r73623ee2be0634979"
info:
    title: PAYCOMET REST API
    version: '2.99.0'
    description: PAYCOMET API REST for customers.
    contact:
        name: PAYCOMET
        url: 'https://www.paycomet.com'
        email: tecnico@paycomet.com
    termsOfService: 'https://www.paycomet.com/aviso-legal'
openapi: 3.0.0
