openapi: 3.0.0
info:
  title: API's OpenData do Open Banking Brasil
  description: As API's descritas neste documento são referentes as API's da fase OpenData do Open Banking Brasil.
  version: 1.0.0
  contact:
    email: apiteam@swagger.io
servers:
  - url: 'http://api.banco.com.br/open-banking/products-services/v1'
tags:
  - name: Accounts
  - name: Loans
  - name: Credit Cards
  - name: Financings
  - name: Invoice Financings
paths:
  /personal-accounts:
    get:
      tags:
        - Accounts
      summary: Obtém dados das contas pessoa física
      description: Obtém dados das contas
      operationId: getPersonalAccounts
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PersonalAccountsResponse'
  /business-accounts:
    get:
      tags:
        - Accounts
      summary: Obtém dados das contas pessoa jurídica
      description: Obtém dados das contas pessoa jurídica
      operationId: getBusinessAccounts
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseBusinessAccounts'
  /personal-loans:
    get:
      tags:
        - Loans
      summary: Obtém dados sobre empréstimos pessoa física
      description: Obtém dados sobre empréstimos pessoa física
      operationId: getPersonalLoans
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponsePersonalLoansList'
  /business-loans:
    get:
      tags:
        - Loans
      summary: Obtém dados sobre empréstimos pessoa jurídica
      description: Obtém dados sobre empréstimos pessoa jurídica
      operationId: getBusinessLoans
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseBusinessLoansList'
  /personal-credit-cards:
    get:
      tags:
        - Credit Cards
      summary: Obtém dados sobre cartões de crédito pessoa física
      description: Obtém dados sobre cartões de crédito pessoa física
      operationId: getPersonalCreditCards
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PersonalCreditCardResponse'
  /business-credit-cards:
    get:
      tags:
        - Credit Cards
      summary: Obtém dados sobre cartões de crédito pessoa jurídica
      description: Obtém dados sobre cartões de crédito pessoa jurídica
      operationId: getBusinessCreditCards
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BusinessCreditCardResponse'
  /personal-financings:
    get:
      tags:
        - Financings
      summary: Obtém a lista de Financiamentos de Pessoa Física.
      description: Obtém a lista de Financiamentos de Pessoa Física
      operationId: getPersonalFinancings
      responses:
        '200':
          description: Retorna lista de financiamentos de pessoa física.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponsePersonalFinancingsList'
  /business-financings:
    get:
      tags:
        - Financings
      summary: Obtém a lista de Financiamentos de Pessoa Física.
      description: Obtém a lista de Financiamentos de Pessoa Física.
      operationId: getBusinessFinancings
      responses:
        '200':
          description: Retorna lista de financiamentos de pessoa jurídica.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseBusinessFinancingsList'
  /personal-invoice-financings:
    get:
      tags:
        - Invoice Financings
      summary: Obtém a lista de Adiantamento de Recebíveis de Pessoa Física.
      description: Obtém a lista de Adiantamento de Recebíveis de Pessoa Física.
      operationId: getPersonalInvoiceFinancings
      responses:
        '200':
          description: Retorna lista de adiantamento de recebíveis de pessoa física.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponsePersonalInvoiceFinancingsList'
  /business-invoice-financings:
    get:
      tags:
        - Invoice Financings
      summary: Obtém a lista de Adiantamento de Recebíveis de Pessoa Jurídica.
      description: Obtém a lista de Adiantamento de Recebíveis de Pessoa Jurídica.
      operationId: getBusinessInvoiceFinancings
      responses:
        '200':
          description: Retorna lista de adiantamento de recebíveis de pessoa jurídica.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseBusinessInvoiceFinancingsList'
components:
  schemas:
    AccountsTermsConditions:
      type: object
      required:
        - minimumBalance
        - elegibilityCriteriaInfo
        - closingProcessInfo
      properties:
        minimumBalance:
          type: object
          properties:
            value:
              type: string
              maxLength: 12
              pattern: '^((\d{1,9}\.\d{2}){1}|NA)$'
              description: 'Saldo mínimo exigido nos Termos e condições contratuais, que regem as contas comercializadas.'
              example: '200.00'
            currency:
              type: string
              description: 'Moeda referente ao saldo mínimo exigido, segundo modelo ISO-4217.'
              example: BRL
        elegibilityCriteriaInfo:
          type: string
          maxLength: 1024
          pattern: \w*\W*
          description: 'Critérios de qualificação do cliente com a finalidade de definir sua elegibilidade para a aquisição do tipo de conta. Possibilidade de inscrição da URL. Endereço eletrônico de acesso ao canal. URLs são limitadas a 2048 caracteres mas, para o contexto do Sistema Financeiro aberto, será adotado a metade deste tamanho.'
          example: 'https://example.com/mobile-banking'
        closingProcessInfo:
          type: string
          maxLength: 2000
          pattern: \w*\W*
          description: 'Procedimentos de encerramento para o tipo de conta tratado. Possibilidade de inscrição da URL. Endereço eletrônico de acesso ao canal. URLs são limitadas a 2048 caracteres mas, para o contexto do Sistema Financeiro aberto, será adotado a metade deste tamanho.'
          example: 'https://example.com/mobile-banking'
    AccountOtherServicesPrice:
      type: object
      required:
        - interval
        - value
        - currency
      properties:
        interval:
          type: string
          enum:
            - 1_QUARTIL_CLIENTES
            - 2_QUARTIL_CLIENTES
            - 3_QUARTIL_CLIENTES
            - 4_QUARTIL_CLIENTES
          description: 'Faixas de valor referentes a tarifa de outro Serviços informada: 1º quartil de clientes, 2º quartil de clientes, 3º quartil de clientes e 4º quartil de clientes'
          example: 1_QUARTIL_CLIENTES
        value:
          type: string
          description: 'Valor da mediana da tarifa cobrada referente a Outros Serviços, para o tipo de faixa informada'
          example: '45.00'
          maxLength: 12
          pattern: '^((\d{1,9}\.\d{2}){1}|NA)$'
        currency:
          type: string
          pattern: '^(\w{3}){1}$'
          description: 'Moeda referente ao valor da mediana da tarifa de Outros Serviços no quartil informado, segundo modelo ISO-4217.'
          example: BRL
        minimum:
          type: object
          required:
            - value
            - currency
          properties:
            value:
              type: string
              maxLength: 12
              description: Valor mínimo cobrado para a tarifa de Outros Serviços no mês de referência
              pattern: '^((\d{1,9}\.\d{2}){1}|NA)$'
              example: '45.00'
            currency:
              type: string
              description: 'Moeda referente ao valor mínimo da tarifa de Outros Serviços, segundo modelo ISO-4217.'
              example: BRL
        maximum:
          type: object
          required:
            - value
            - currency
          properties:
            value:
              type: string
              maxLength: 12
              pattern: '^((\d{1,9}\.\d{2}){1}|NA)$'
              description: Valor máximo cobrado para a tarifa de Outros Serviços no mês de referência.
              example: '45.00'
            currency:
              type: string
              description: 'Moeda referente ao valor máximo da tarifa de outros serviços, segundo modelo ISO-4217.'
              example: BRL

    PersonalAccountsResponse:
      type: object
      required:
        - data
        - links
        - meta
      properties:
        data:
          type: object
          required:
            - brand
          properties:
            brand:
              type: object
              required:
                - name
                - companies
              properties:
                name:
                  type: string
                  maxLength: 30
                  pattern: \w*\W*
                  description: 'Nome da Marca reportada pelo participante do Open Banking. O conceito a que se refere a ''marca'' é em essência uma promessa da empresa em fornecer uma série específica de atributos, benefícios e serviços uniformes aos clientes.'
                  example: Organização A
                companies:
                  type: array
                  items:
                    type: object
                    required:
                      - name
                      - cnpjNumbers
                    properties:
                      name:
                        type: string
                        maxLength: 80
                        description: 'Nome da Instituição, pertencente à marca, responsável pela comercialização dos produtos e serviços'
                        example: Empresa A1
                      cnpjNumbers:
                        type: string
                        minLength: 14
                        maxLength: 14
                        pattern: '^(\d{14})$'
                        description: O CNPJ corresponde ao número de inscrição no Cadastro de Pessoa Jurídica.
                        example: '45086338000178'
                      urlComplementaryList:
                        type: string
                        maxLength: 1024
                        pattern: \w*\W*
                        description: 'URL do link que conterá a lista complementar com os nomes e CNPJs agrupados sob o mesmo cnpjNumber. Os contidos nessa lista possuem as mesmas características para produtos e serviços. Endereço eletrônico de acesso ao canal. URLs são limitadas a 2048 caracteres mas, para o contexto do Sistema Financeiro aberto, será adotado a metade deste tamanho.'
                        example: 'https://empresaa1.com/branches-banking'
                      personalAccounts:
                        type: array
                        items:
                          type: object
                          required:
                            - type
                            - fees
                            - serviceBundles
                            - openingClosingChannels
                            - transactionMethods
                            - termsConditions
                            - incomeRates
                          properties:
                            type:
                              type: string
                              enum:
                                - CONTA_DEPOSITO_A_VISTA
                                - CONTA_POUPANCA
                                - CONTA_PAGAMENTO_PRE_PAGA
                              description: 'Tipos de contas ofertadas para pessoas Físicas, conforme Resolução 3.919 do Bacen.'
                              example: CONTA_DEPOSITO_A_VISTA
                            fees:
                              type: array
                              items:
                                required:
                                  - priorityServices
                                properties:
                                  priorityService:
                                    $ref: '#/components/schemas/PersonalAccountsPriorityServices'
                                  otherService:
                                    $ref: '#/components/schemas/PersonalAccountsOtherServices'
                            serviceBundles:
                              type: array
                              items:
                                type: object
                                required:
                                  - name
                                  - services
                                  - prices
                                  - minimum
                                  - maximum
                                properties:
                                  name:
                                    type: string
                                    maxLength: 70
                                    pattern: \w*\W*
                                    description: Nome do Pacote de Serviços dado pela instituição.
                                    example: Conta de depósitos à vista Movimentação com cartão (sem cheque)
                                  services:
                                    type: array
                                    items:
                                      required:
                                        - code
                                        - eventLimitQuantity
                                        - freeEventQuantity
                                      properties:
                                        code:
                                          type: string
                                          maxLength: 30
                                          description: 'Código que identifica o Serviço que compõe o Pacote de Serviços, podendo ser da lista de Serviços Prioritários ou Outros Serviços.'
                                          example: SAQUE_TERMINAL
                                        eventLimitQuantity:
                                          type: string
                                          maxLength: 6
                                          description: Quantidade de eventos previstos no Pacote de Serviços (Número de eventos incluídos no mês)
                                          example: '2'
                                        freeEventQuantity:
                                          type: string
                                          maxLength: 6
                                          description: Quantidade de eventos previstos no Pacote de Serviços com isenção de Tarifa
                                          example: '1'
                                  prices:
                                    type: array
                                    items:
                                      required:
                                        - interval
                                        - monthlyFee
                                        - currency
                                      properties:
                                        interval:
                                          type: string
                                          enum:
                                            - 1_QUARTIL_CLIENTES
                                            - 2_QUARTIL_CLIENTES
                                            - 3_QUARTIL_CLIENTES
                                            - 4_QUARTIL_CLIENTES
                                          description: 'Faixas de valor referentes a tarifa de Pacote de Serviços informada: 1º quartil de clientes, 2º quartil de clientes, 3º quartil de clientes e 4º quartil de clientes'
                                          example: 1_QUARTIL_CLIENTES
                                        monthlyFee:
                                          type: string
                                          description: Valor da mediana da tarifa mensal referente ao Pacote de Serviços.
                                          example: '130.00'
                                          maxLength: 12
                                          pattern: '^((\d{1,9}\.\d{2}){1}|NA)$'
                                        currency:
                                          type: string
                                          maxLength: 3
                                          pattern: '^(\w{3}){1}$'
                                          description: 'Moeda referente ao valor da mediana da tarifa mensal do Pacote de Serviços, segundo modelo ISO-4217. '
                                          example: BRL
                                  minimum:
                                    type: object
                                    required:
                                      - value
                                      - currency
                                    properties:
                                      value:
                                        type: string
                                        maxLength: 12
                                        description: Valor  mensal mínimo cobrado referente ao Pacote de Serviços no mês de referência
                                        pattern: '^((\d{1,9}\.\d{2}){1}|NA)$'
                                        example: '45.00'
                                      currency:
                                        type: string
                                        description: 'Moeda referente ao valor mínimo da tarifa de Pacote de Serviços, segundo modelo ISO-4217.'
                                        example: BRL
                                  maximum:
                                    type: object
                                    required:
                                      - value
                                      - currency
                                    properties:
                                      value:
                                        type: string
                                        maxLength: 12
                                        pattern: '^((\d{1,9}\.\d{2}){1}|NA)$'
                                        description: Valor mensal máximo cobrado referente ao Pacote de Serviços no mês de referência.
                                        example: '45.00'
                                      currency:
                                        type: string
                                        description: 'Moeda referente ao valor máximo da tarifa do Pacote de Serviços, segundo modelo ISO-4217.'
                                        example: BRL
                              example:
                                - name: 'Movimentação com cartão (sem cheque)'
                                  services:
                                    - code: 'CADASTRO'
                                      eventLimitQuantity: '1'
                                      freeEventQuantity: '0'
                                    - code: 'SAQUE_TERMINAL'
                                      eventLimitQuantity: '999999'
                                      freeEventQuantity: '8'
                                    - code: 'EXTRATO_MOVIMENTO_E'
                                      eventLimitQuantity: '999999'
                                      freeEventQuantity: '4'
                                    - code: 'TRANSF_RECURSO_P'
                                      eventLimitQuantity: '999999'
                                      freeEventQuantity: '2'
                                  prices:
                                    - interval: '1_QUARTIL_CLIENTES'
                                      monthlyFee: '43.40'
                                      currency: 'BRL'
                                    - interval: '2_QUARTIL_CLIENTES'
                                      monthlyFee: '55.00'
                                      currency: 'BRL'
                                    - interval: '3_QUARTIL_CLIENTES'
                                      monthlyFee: '62.00'
                                      currency: 'BRL'
                                    - interval: '4_QUARTIL_CLIENTES'
                                      monthlyFee: '69.00'
                                      currency: 'BRL'
                                  minimum:
                                    value: '19.00'
                                    currency: 'BRL'
                                  maximum:
                                    value: '88.00'
                                    currency: 'BRL'
                                - name: 'Conta de depósitos à vista - Pacote XXX'
                                  services:
                                    - code: 'Serviço 1'
                                      eventLimitQuantity: '999999'
                                      freeEventQuantity: '999999'
                                    - code: 'Serviço 2'
                                      eventLimitQuantity: '999999'
                                      freeEventQuantity: '8'
                                    - code: 'Serviço 3'
                                      eventLimitQuantity: '999999'
                                      freeEventQuantity: '4'
                                    - code: 'Serviço 4'
                                      eventLimitQuantity: '999999'
                                      freeEventQuantity: '2'
                                  prices:
                                    - interval: '1_QUARTIL_CLIENTES'
                                      monthlyFee: '30.40'
                                      currency: 'BRL'
                                    - interval: '2_QUARTIL_CLIENTES'
                                      monthlyFee: '45.00'
                                      currency: 'BRL'
                                    - interval: '3_QUARTIL_CLIENTES'
                                      monthlyFee: '62.00'
                                      currency: 'BRL'
                                    - interval: '4_QUARTIL_CLIENTES'
                                      monthlyFee: '69.00'
                                      currency: 'BRL'
                                  minimum:
                                    value: '33.00'
                                    currency: 'BRL'
                                  maximum:
                                    value: '87.00'
                                    currency: 'BRL'
                            openingClosingChannels:
                              type: string
                              enum:
                                - DEPENDENCIAS_PROPRIAS
                                - CORRESPONDENTES_BANCARIOS
                                - INTERNET_BANKING
                                - MOBILE_BANKING
                                - CENTRAL_TELEFONICA
                                - CHAT
                                - OUTROS
                              description: Canais disponíveis para abertura e encerramento de contas
                              example: CENTRAL_TELEFONICA
                            additionalInfo:
                              type: string
                              maxLength: 100
                              pattern: \w*\W*
                              description: 'Texto livre para complementar informação relativa ao Canal disponível, quando no campo ''openingClosingChannels'' estiver preenchida a opção ''Outros'''
                              example: 'NA'
                            transactionMethods:
                              type: string
                              enum:
                                - MOVIMENTACAO_ELETRONICA
                                - MOVIMENTACAO_CHEQUE
                                - MOVIMENTACAO_CARTAO
                                - MOVIMENTACAO_PRESENCIAL
                              description: Lista de formas de movimentação possíveis para a conta
                              example: MOVIMENTACAO_CARTAO
                            termsConditions:
                              $ref: '#/components/schemas/AccountsTermsConditions'
                            incomeRates:
                              type: array
                              items:
                                $ref: '#/components/schemas/PersonalAccountsIncomeRates'
        links:
          $ref: '#/components/schemas/Links'
        meta:
          $ref: '#/components/schemas/Meta'

    PersonalAccountsPriorityServices:
      type: object
      required:
        - name
        - codes
        - chargingTriggerInfo
        - prices
        - minimum
        - maximum
      properties:
        name:
          type: string
          maxLength: 100
          pattern: \w*\W*
          description: 'Nome dos Serviços prioritários, segundo Resolução 3.919 do Bacen, para pessoa física.'
          example: Fornecimento de extrato de um período de conta de depósitos à vista e de poupança
        code:
          type: string
          enum:
            - CADASTRO
            - 2_VIA_CARTAO_DEBITO
            - 2_VIA-CARTAO_POUPANCA
            - EXCLUSAO_CCF
            - SUSTACAO_REVOGACAO
            - FOLHA_CHEQUE
            - CHEQUE_ADMINISTRATIVO
            - CHEQUE_VISADO
            - SAQUE_PESSOAL
            - SAQUE_TERMINAL
            - SAQUE_CORRESPONDENTE
            - DEPOSITO_IDENTIFICADO
            - EXTRATO_MES_P
            - EXTRATO_MES_E
            - EXTRATO_MES_C
            - EXTRATO_MOVIMENTO_P
            - EXTRATO_MOVIMENTO_E
            - EXTRATO_MOVIMENTO_C
            - MICROFILME
            - DOC_PESSOAL
            - DOCELETRONICO
            - DOC_INTERNET
            - TED_PESSOAL
            - TED_ELETRONICO
            - TED_INTERNET
            - DOC_TED_AGENDADO_P
            - DOC_TED_AGENDADO_E
            - DOC_TED_AGENDADO_I
            - TRANSF_RECURSO_P
            - TRANSF_RECURSO_E
            - ORDEM_PAGAMENTO
          description: 'Sigla de identificação do Serviço Prioritário, segundo Resolução 3.919 do Bacen.'
          example: TED_PESSOAL
        chargingTriggerInfo:
          type: string
          maxLength: 2000
          pattern: \w*\W*
          description: 'Fatos geradores de cobrança que incidem sobre os serviços prioritários, segundo Resolução 3.919 do Bacen, para pessoa física.'
          example: 'Fornecimento de extrato com a movimentação de um período em guichê de caixa ou por outras formas de atendimento pessoal, tal como atendimento telefônico realizado por atendente.'
        prices:
          type: array
          items:
            type: object
            required:
              - interval
              - value
              - currency
            properties:
              interval:
                type: string
                enum:
                  - 1_QUARTIL_CLIENTES
                  - 2_QUARTIL_CLIENTES
                  - 3_QUARTIL_CLIENTES
                  - 4_QUARTIL_CLIENTES
                description: 'Faixas de valor referentes a tarifa do Serviço Prioritário informada: 1º quartil de clientes, 2º quartil de clientes, 3º quartil de clientes e 4º quartil de clientes'
                example: 1_QUARTIL_CLIENTES
              value:
                type: string
                pattern: '^((\d{1,9}\.\d{2}){1}|NA)$'
                maxLength: 12
                description: 'Valor da mediana da tarifa cobrada, relativa ao Serviço Prioritário, para o tipo de faixa informada.'
                example: '45.00'
              currency:
                type: string
                pattern: '^([A-Z]{3})$'
                description: 'Moeda referente ao valor da mediana da tarifa do Serviço Prioritário no quartil informado, segundo modelo ISO-4217.'
                example: BRL
          example:
            - interval: '1_QUARTIL_CLIENTES'
              value: '35.40'
              currency: 'BRL'
            - interval: '2_QUARTIL_CLIENTES'
              value: '45.00'
              currency: 'BRL'
            - interval: '3_QUARTIL_CLIENTES'
              value: '52.00'
              currency: 'BRL'
            - interval: '4_QUARTIL_CLIENTES'
              value: '69.00'
              currency: 'BRL'
        minimum:
          type: object
          required:
            - value
            - currency
          properties:
            value:
              type: string
              maxLength: 12
              description: Valor mínimo cobrado para a tarifa de Serviço Prioritário no mês de referência
              pattern: '^((\d{1,9}\.\d{2}){1}|NA)$'
              example: '45.00'
            currency:
              type: string
              pattern: '^([A-Z]{3})$'
              description: Moeda referente ao valor da tarifa conforme ISO-4217
              example: BRL
        maximum:
          type: object
          required:
            - value
            - currency
          properties:
            value:
              type: string
              maxLength: 12
              pattern: '^((\d{1,9}\.\d{2}){1}|NA)$'
              description: Valor máximo cobrado para a tarifa de Serviço Prioritário no mês de referência
              example: '88.00'
            currency:
              type: string
              pattern: '^([A-Z]{3})$'
              description: Moeda referente ao valor da tarifa conforme ISO-4217
              example: BRL
    PersonalAccountsOtherServices:
      type: object
      required:
        - name
        - code
        - chargingTriggerInfo
        - prices
      properties:
        name:
          type: string
          maxLength: 80
          description: 'Nome de Outro Serviço para pessoa física (Campo Livre) '
          example: Evento personalizado
        code:
          type: string
          maxLength: 60
          description: ' Siglas de identificação de Outro Serviço (Campo Livre)'
          example: EVENTO_PERSONALIZADO
        chargingTriggerInfo:
          type: string
          maxLength: 2000
          pattern: \w*\W*
          description: Fatos geradores de cobrança que incidem sobre outros serviços para pessoa física. (Campo Livre)
          example: Cobrança devido a evento personalizado
        prices:
          type: array
          items:
            type: object
            required:
              - interval
              - value
              - currency
            properties:
              interval:
                type: string
                enum:
                  - 1_QUARTIL_CLIENTES
                  - 2_QUARTIL_CLIENTES
                  - 3_QUARTIL_CLIENTES
                  - 4_QUARTIL_CLIENTES
                description: 'Faixas de valor referentes a tarifa do Serviço Prioritário informada: 1º quartil de clientes, 2º quartil de clientes, 3º quartil de clientes e 4º quartil de clientes'
                example: 1_QUARTIL_CLIENTES
              value:
                type: string
                pattern: '^((\d{1,9}\.\d{2}){1}|NA)$'
                maxLength: 12
                description: 'Valor da mediana da tarifa cobrada, relativa ao Serviço Prioritário, para o tipo de faixa informada.'
                example: '45.00'
              currency:
                type: string
                pattern: '^([A-Z]{3})$'
                description: 'Moeda referente ao valor da mediana da tarifa do Serviço Prioritário no quartil informado, segundo modelo ISO-4217.'
                example: BRL
          example:
            - interval: '1_QUARTIL_CLIENTES'
              value: '30.40'
              currency: 'BRL'
            - interval: '2_QUARTIL_CLIENTES'
              value: '45.00'
              currency: 'BRL'
            - interval: '3_QUARTIL_CLIENTES'
              value: '62.00'
              currency: 'BRL'
            - interval: '4_QUARTIL_CLIENTES'
              value: '69.00'
              currency: 'BRL'
        minimum:
          type: object
          required:
            - value
            - currency
          properties:
            value:
              type: string
              maxLength: 12
              description: Valor mínimo cobrado para a tarifa de Serviço Prioritário no mês de referência
              pattern: '^((\d{1,9}\.\d{2}){1}|NA)$'
              example: '19.00'
            currency:
              type: string
              pattern: '^([A-Z]{3})$'
              description: Moeda referente ao valor da tarifa conforme ISO-4217
              example: BRL
        maximum:
          type: object
          required:
            - value
            - currency
          properties:
            value:
              type: string
              maxLength: 12
              pattern: '^((\d{1,9}\.\d{2}){1}|NA)$'
              description: Valor máximo cobrado para a tarifa de Serviço Prioritário no mês de referência
              example: '88.00'
            currency:
              type: string
              pattern: '^([A-Z]{3})$'
              description: Moeda referente ao valor da tarifa conforme ISO-4217
              example: BRL
    PersonalAccountsIncomeRates:
      type: object
      required:
        - savingAccount
        - prepaidPaymentAccount
      properties:
        savingAccount:
          type: string
          maxLength: 2000
          pattern: \w*\W*
          description: Descrição da Remuneração especificamente para Conta de Poupança. Deve ser preenchido com a determinação legal vigente.
          example: 'NA'
        prepaidPaymentAccount:
          type: object
          required:
            - applications
            - minimumRate
            - maximumRate
          properties:
            applications:
              type: array
              items:
                type: object
                required:
                  - interval
                  - rate
              properties:
                interval:
                  type: string
                  enum:
                    - 1_QUARTIL_CLIENTES
                    - 2_QUARTIL_CLIENTES
                    - 3_QUARTIL_CLIENTES
                    - 4_QUARTIL_CLIENTES
                  description: 'Faixas do percentual de taxa de remuneração efetivamente aplicada no intervalo informado para Contas do Tipo CONTA_PAGAMENTO_PRE_PAGA :1º quartil de clientes, 2º quartil de clientes, 3º quartil de clientes e 4º quartil de clientes'
                  example: 1_QUARTIL_CLIENTES
                rate:
                  type: string
                  pattern: '((-?[1-9]?\d{1,4}){1}(\.\d{1,4}){1}|NA)$'
                  maxLength: 9
                  description: 'Percentual que corresponde a taxa mediana de remuneração efetivamente aplicada no intervalo informado para CONTA_PAGAMENTO_PRE_PAGA. A apuração pode acontecer com até 4 casas decimais. O preenchimento deve respeitar as 4 casas decimais, emso que venham preenchidas com zeros'
                  example: '0.1500'
              example:
                - interval: '1_QUARTIL_CLIENTES'
                  rate: 'NA'
                - interval: '2_QUARTIL_CLIENTES'
                  rate: 'NA'
                - interval: '3_QUARTIL_CLIENTES'
                  rate: 'NA'
                - interval: '4_QUARTIL_CLIENTES'
                  rate: 'NA'
            mininumRate:
              type: string
              pattern: '((-?[1-9]?\d{1,4}){1}(\.\d{1,4}){1}|NA)$'
              maxLength: 9
              description: 'Percentual mínimo referente à taxa de remuneração efetivamente aplicada no mês de referência para CONTA_PAGAMENTO_PRE_PAGA. A apuração pode acontecer com até 4 casas decimais. O preenchimento deve respeitar as 4 casas decimais, emso que venham preenchidas com zeros'
              example: 'NA'
            maximumRate:
              type: string
              pattern: '((-?[1-9]?\d{1,4}){1}(\.\d{1,4}){1}|NA)$'
              maxLength: 9
              description: 'Percentual máximo referente à taxa de remuneração efetivamente aplicada no mês de referência para VCONTA_PAGAMENTO_PRE_PAGA. A apuração pode acontecer com até 4 casas decimais. O preenchimento deve respeitar as 4 casas decimais, emso que venham preenchidas com zeros'
              example: 'NA'
    ResponseBusinessAccounts:
      type: object
      required:
        - data
        - links
        - meta
      properties:
        data:
          type: object
          required:
            - brand
          properties:
            brand:
              type: object
              required:
                - name
                - companies
              properties:
                name:
                  type: string
                  maxLength: 30
                  pattern: \w*\W*
                  description: 'Nome da Instituição, pertencente à marca, responsável pela comercialização dos produtos e serviços'
                  example: Organização A
                companies:
                  type: array
                  items:
                    required:
                      - name
                      - cnpjNumber
                    properties:
                      name:
                        type: string
                        maxLength: 80
                        pattern: \w*\W*
                        description: 'Nome da Instituição, pertencente à marca, responsável pela comercialização dos produtos e serviços'
                        example: The Big Bank Company
                      cnpjNumber:
                        type: string
                        minLength: 14
                        maxLength: 14
                        pattern: '^(\d{14})$'
                        description: Número completo do CNPJ da instituição responsável pelos  tipos de contas de pessoas juridicas cosultadas.
                        example: '54672317000101'
                      urlComplementaryList:
                        type: string
                        description: URL do link que conterá a lista complementar com os nomes e CNPJs agrupados sob o mesmo cnpjNumber.
                        pattern: \w*\W*
                        example: 'https://empresaa1.com/branches-banking'
                      businessAccounts:
                        type: array
                        items:
                          required:
                            - type
                            - fees
                            - serviceBundles
                            - openingClosingChannels
                            - transactionMethods
                            - termsConditions
                            - incomeRates
                          properties:
                            type:
                              type: string
                              enum:
                                - CONTA_DEPOSITO_A_VISTA
                                - CONTA_POUPANCA
                                - CONTA_PAGAMENTO_PRE_PAGA
                              description: 'Tipos de contas ofertadas para pessoas jurídicas, conforme Resolução 3.919 do Bacen.'
                              example: CONTA_DEPOSITO_A_VISTA
                            fees:
                              type: array
                              items:
                                type: object
                                required:
                                  - service
                                properties:
                                  service:
                                    $ref: '#/components/schemas/BusinessAccountsServices'
                            serviceBundles:
                              type: array
                              items:
                                type: object
                                required:
                                  - name
                                  - service
                                  - prices
                                  - minimum
                                  - maximum
                                properties:
                                  name:
                                    type: string
                                    maxLength: 70
                                    description: Nome do Pacote de Serviços dado pela instituição.
                                  service:
                                    type: array
                                    items:
                                      required:
                                        - code
                                        - eventLimitQuantity
                                        - freeEventQuantity
                                      properties:
                                        code:
                                          type: string
                                          maxLength: 30
                                          description: 'Código que identifica o Serviço que compõe o Pacote de Serviços, podendo ser da lista de Serviços Prioritários ou Outros Serviços'
                                          example: SAQUE_TERMINAL
                                        eventLimitQuantity:
                                          type: string
                                          maxLength: 6
                                          pattern: '^(\d{1,6}){1}$'
                                          description: Quantidade de eventos previstos no Pacote de Serviços (Número de eventos incluídos no mês)
                                          example: '2'
                                        freeEventQuantity:
                                          type: string
                                          maxLength: 6
                                          pattern: '^(\d{1,6}){1}$'
                                          description: Quantidade de eventos previstos no Pacote de Serviços com isenção de Tarifa
                                          example: '1'
                                  prices:
                                    type: array
                                    items:
                                      type: object
                                      required:
                                        - interval
                                        - monthlyFee
                                        - currency
                                      properties:
                                        interval:
                                          type: string
                                          enum:
                                            - 1_QUARTIL_CLIENTES
                                            - 2_QUARTIL_CLIENTES
                                            - 3_QUARTIL_CLIENTES
                                            - 4_QUARTIL_CLIENTES
                                          description: 'Faixas de valor referentes ao pagamento mensal do Pacote de Serviços informado: 1º quartil de clientes, 2º quartil de clientes, 3º quartil de clientes e 4º quartil de clientes'
                                          example: 1_QUARTIL_CLIENTES
                                        monthlyFee:
                                          type: string
                                          description: Valor da mediana da tarifa mensal referente ao Pacote de Serviços.
                                          example: '50.00'
                                        currency:
                                          type: string
                                          maxLength: 3
                                          pattern: '^(\w{3}){1}$'
                                          description: 'Moeda referente ao valor da mediana da tarifa mensal do Pacote de Serviços, segundo modelo ISO-4217.'
                                          example: BRL
                                  minimum:
                                    $ref: '#/components/schemas/MinimumPrice'
                                  maximum:
                                    $ref: '#/components/schemas/MaximumPrice'
                            openingClosingChannels:
                              type: string
                              enum:
                                - DEPENDENCIAS_PROPRIAS
                                - CORRESPONDENTES_BANCARIOS
                                - INTERNET_BANKING
                                - MOBILE_BANKING
                                - CENTRAL_TELEFONICA
                                - CHAT
                                - OUTROS
                              description: Canais disponíveis para abertura e encerramento de contas
                              example: CENTRAL_TELEFONICA
                            additionalInfo:
                              type: string
                              maxLength: 100
                              pattern: \w*\W*
                              description: 'Texto livre para complementar informação relativa ao Canal disponível, quando no campo ''openingClosingChannels'' estiver preenchida a opção ''Outros'''
                              example: NA
                            transactionMethods:
                              type: string
                              enum:
                                - MOVIMENTACAO_ELETRONICA
                                - MOVIMENTACAO_CHEQUE
                                - MOVIMENTACAO_CARTAO
                                - MOVIMENTACAO_PRESENCIAL
                              description: Lista de formas de movimentação possíveis para a conta
                              example: MOVIMENTACAO_CARTAO
                            termsConditions:
                              $ref: '#/components/schemas/AccountsTermsConditions'
                            incomeRates:
                              type: array
                              items:
                                required:
                                  - savingAccount
                                  - prepaidPaymentAccount
                                properties:
                                  savingAccount:
                                    type: string
                                    maxLength: 2000
                                    pattern: \w*\W*
                                    description: Descrição da Remuneração especificamente para Conta de Poupança. Deve ser preenchido com a determinação legal vigente.
                                    example: '''70% da Taxa Selic (6,5%) = 4,55%, que é o atual rendimento anual da poupança. O rendimento mensal é de 0,3715'
                                  prepaidPaymentAccount:
                                    type: object
                                    required:
                                      - applications
                                      - minimumRate
                                      - maximumRate
                                    properties:
                                      applications:
                                        type: array
                                        items:
                                          type: object
                                          required:
                                            - interval
                                            - rate
                                          properties:
                                            interval:
                                              type: string
                                              enum:
                                                - 1_QUARTIL_CLIENTES
                                                - 2_QUARTIL_CLIENTES
                                                - 3_QUARTIL_CLIENTES
                                                - 4_QUARTIL_CLIENTES
                                              description: 'Faixas do percentual de taxa de remuneração efetivamente aplicada no intervalo informado para Contas do Tipo CONTA_PAGAMENTO_PRE_PAGA :1º quartil de clientes, 2º quartil de clientes, 3º quartil de clientes e 4º quartil de clientes'
                                              example: 1_QUARTIL_CLIENTES
                                            rate:
                                              type: string
                                              pattern: '((-?[1-9]?\d{1,4}){1}(\.\d{1,4}){1}|NA)$'
                                              maxLength: 9
                                              description: 'Percentual que corresponde a taxa mediana de remuneração efetivamente aplicada no intervalo informado para CONTA_PAGAMENTO_PRE_PAGA. A apuração pode acontecer com até 4 casas decimais. O preenchimento deve respeitar as 4 casas decimais, emso que venham preenchidas com zeros'
                                              example: '0.1500'
                                      mininumRate:
                                        type: string
                                        pattern: '((-?[1-9]?\d{1,4}){1}(\.\d{1,4}){1}|NA)$'
                                        maxLength: 9
                                        description: 'Percentual mínimo referente à taxa de remuneração efetivamente aplicada no mês de referência para CONTA_PAGAMENTO_PRE_PAGA. A apuração pode acontecer com até 4 casas decimais. O preenchimento deve respeitar as 4 casas decimais, emso que venham preenchidas com zeros'
                                        example: '0.1500'
                                      maximumRate:
                                        type: string
                                        pattern: '((-?[1-9]?\d{1,4}){1}(\.\d{1,4}){1}|NA)$'
                                        maxLength: 9
                                        description: 'Percentual máximo referente à taxa de remuneração efetivamente aplicada no mês de referência para VCONTA_PAGAMENTO_PRE_PAGA. A apuração pode acontecer com até 4 casas decimais. O preenchimento deve respeitar as 4 casas decimais, emso que venham preenchidas com zeros'
                                        example: '0.1500'
        links:
          $ref: '#/components/schemas/Links'
        meta:
          $ref: '#/components/schemas/Meta'
      example:
        data:
          brand:
            name: Organização A
            companies:
              - name: Empresa A1
                cnpjNumber: '45086338000178'
                urlComplementaryList: 'https://empresaa1.com/branches-banking'
                businessAccounts:
                  - type: CONTA_DEPOSITO_A_VISTA
                    fees:
                      - service:
                          name: "NA"
                          code: "NA"
                          chargingTriggerInfo: "NA"
                          prices:
                            - interval: 1_QUARTIL_CLIENTES
                              value: '55.40'
                              currency: BRL
                            - interval: 2_QUARTIL_CLIENTES
                              value: '65.00'
                              currency: BRL
                            - interval: 3_QUARTIL_CLIENTES
                              value: '69.00'
                              currency: BRL
                            - interval: 4_QUARTIL_CLIENTES
                              value: '72.00'
                              currency: BRL
                          minimum:
                            value: '49.00'
                            currency: BRL
                          maximum:
                            value: '88.00'
                            currency: BRL
                    serviceBundles:
                      - name: Conta de depósitos à vista Movimentação com cartão (sem cheque)
                        service:
                          - code: CADASTRO
                            eventLimitQuantity: '999999'
                            freeEventQuantity: '999999'
                          - code: SAQUE_TERMINAL
                            eventLimitQuantity: '999999'
                            freeEventQuantity: '8'
                          - code: EXTRATO_MOVIMENTO_E
                            eventLimitQuantity: '999999'
                            freeEventQuantity: '4'
                          - code: TRANSF_RECURSO_P
                            eventLimitQuantity: '999999'
                            freeEventQuantity: '2'
                        prices:
                          - interval: 1_QUARTIL_CLIENTES
                            monthlyFee: '50.00'
                            currency: BRL
                          - interval: 2_QUARTIL_CLIENTES
                            monthlyFee: '65.40'
                            currency: BRL
                          - interval: 3_QUARTIL_CLIENTES
                            monthlyFee: '75.40'
                            currency: BRL
                          - interval: 4_QUARTIL_CLIENTES
                            monthlyFee: '83.00'
                            currency: BRL
                        minimum:
                          value: '45.00'
                          currency: BRL
                        maximum:
                          value: '87.00'
                          currency: BRL
                    openingClosingChannels: CENTRAL_TELEFONICA
                    additionalInfo: NA
                    transactionMethods: MOVIMENTACAO_CARTAO
                    termsConditions:
                      minimumBalance:
                        value: '500.00'
                        currency: BRL
                      elegibilityCriteriaInfo: 'https://empresaa1.com/Accounts_elegebilityCriteria'
                      closingProcessInfo: 'https://empresaa1.com/Accounts_closingProcess'
                    incomeRates:
                      - savingAccount: NA
                        prepaidPaymentAccount:
                          applications:
                            - interval: 1_QUARTIL_CLIENTES
                              rate: NA
                            - interval: 2_QUARTIL_CLIENTES
                              rate: NA
                            - interval: 3_QUARTIL_CLIENTES
                              rate: NA
                            - interval: 4_QUARTIL_CLIENTES
                              rate: NA
                          minimumRate: NA
                          maximumRate: NA
        links:
          self: 'https://api.banco.com.br/open-banking/products-services/v1/business-accounts'
          first: 'https://api.banco.com.br/open-banking/products-services/v1/business-accounts'
          prev: ""
          next: ""
          last: 'https://api.banco.com.br/open-banking/products-services/v1/business-accounts'
        meta:
          totalRecords: 1
          totalPages: 1
    BusinessAccountsServices:
      type: object
      required:
        - name
        - code
        - chargingTriggerInfo
        - prices
        - minimum
        - maximum
      properties:
        name:
          type: string
          maxLength: 50
          description: Nome atribuído a Outros Serviços disponíveis para os tipos de contas informados. Outros Serviços são quaisquer serviços que a instituição ofereça para a modalidade de Contas e não estejam definidos na lista de Serviços Prioritários definidos na resolução 3.919 do Bacen.
          example: Evento personalizado
        code:
          type: string
          maxLength: 30
          description: Sigla de identificação de Outros Serviços que incidem sobre os tipos de contas informados.
          example: EVENTO_PERSONALIZADO
        chargingTriggerInfo:
          type: string
          maxLength: 3000
          description: Outros Fatores geradores de cobrança referentes aos Outros Serviços que incidem sobre as contas comercializadas.
          example: Cobrança devido a evento personalizado
        prices:
          type: array
          items:
            $ref: '#/components/schemas/AccountOtherServicesPrice'
        minimum:
          type: object
          required:
            - value
            - currency
          properties:
            value:
              type: string
              maxLength: 12
              description: Valor mínimo cobrado para a tarifa do Outro Serviço no mês de referência.
              pattern: '^((\d{1,9}\.\d{2}){1}|NA)$'
              example: '45.00'
            currency:
              type: string
              maxLength: 3
              description: 'Moeda referente ao valor mínimo da tarifa do Outro Serviço  segundo modelo ISO-4217. '
              pattern: '^([A-Z]{3})$'
              example: BRL
        maximum:
          type: object
          required:
            - value
            - currency
          properties:
            value:
              type: string
              maxLength: 12
              description: Valor máximo cobrado para a tarifa de Outros Serviços na base de clientes do mês de referência.
              pattern: '^((\d{1,9}\.\d{2}){1}|NA)$'
              example: '45.00'
            currency:
              type: string
              maxLength: 3
              description: 'Moeda referente ao valor máximo da tarifa de outros serviços, segundo modelo ISO-4217.'
              pattern: '^([A-Z]{3})$'
              example: BRL
    ResponsePersonalLoansList:
      type: object
      required:
        - data
        - links
        - meta
      properties:
        data:
          type: object
          required:
            - brand
          properties:
            brand:
              $ref: '#/components/schemas/PersonalLoanBrand'
        links:
          $ref: '#/components/schemas/Links'
        meta:
          $ref: '#/components/schemas/Meta'
    PersonalLoanBrand:
      type: object
      required:
        - name
        - companies
      properties:
        name:
          type: string
          pattern: \w*\W*
          maxLength: 30
          description: Nome da Marca.
          example: Organização A
        companies:
          type: array
          items:
            $ref: '#/components/schemas/PersonalLoanCompany'
          description: Lista de instituições pertencentes à marca
    PersonalLoanCompany:
      type: object
      required:
        - name
        - cnpjNumber
        - personalLoans
      properties:
        name:
          type: string
          pattern: \w*\W*
          maxLength: 80
          description: 'Nome da Instituição, pertencente à marca, responsável pela comercialização dos produtos e serviços'
          example: Empresa da Marca A
        urlComplementaryList:
          type: string
          pattern: \w*\W*
          maxLength: 1024
          description: URL do link que conterá a lista complementar com os nomes e CNPJs agrupados sob o mesmo cnpjNumber. Os contidos nessa lista possuem as mesmas características para produtos e serviços. Endereço eletrônico de acesso ao canal.
          example: 'https://example.com/mobile-banking'
        personalLoans:
          type: array
          items:
            $ref: '#/components/schemas/PersonalLoan'
          description: Lista
      allOf:
        - $ref: '#/components/schemas/CNPJ'
    ResponseBusinessLoansList:
      type: object
      required:
        - data
        - links
        - meta
      properties:
        data:
          type: object
          required:
            - brand
          properties:
            brand:
              $ref: '#/components/schemas/BusinessLoanBrand'
        links:
          $ref: '#/components/schemas/Links'
        meta:
          $ref: '#/components/schemas/Meta'
    BusinessLoanBrand:
      type: object
      required:
        - name
        - companies
      properties:
        name:
          type: string
          pattern: \w*\W*
          maxLength: 30
          description: Nome do marca.
          example: Organização A
        companies:
          type: array
          items:
            $ref: '#/components/schemas/BusinessLoanCompany'
          description: Lista de instituições pertencentes à marca
    BusinessLoanCompany:
      type: object
      required:
        - name
        - cnpjNumber
        - businessLoans
      properties:
        name:
          type: string
          pattern: \w*\W*
          maxLength: 80
          description: 'Nome da Instituição, pertencente à marca, responsável pela comercialização dos produtos e serviços'
          example: Empresa A1
        urlComplementaryList:
          type: string
          pattern: \w*\W*
          maxLength: 1024
          description: URL do link que conterá a lista complementar com os nomes e CNPJs agrupados sob o mesmo cnpjNumber. Os contidos nessa lista possuem as mesmas características para produtos e serviços. Endereço eletrônico de acesso ao canal.
          example: 'https://example.com/mobile-banking'
        businessLoans:
          type: array
          items:
            $ref: '#/components/schemas/BusinessLoan'
          description: Lista
      allOf:
        - $ref: '#/components/schemas/CNPJ'
    PersonalLoan:
      type: object
      required:
        - type
        - fees
        - interestRate
        - requiredWarranties
      properties:
        type:
          type: string
          enum:
            - ADIANTAMENTO_DEPOSITANTE
            - EMPRESTIMO_CREDITO_PESSOAL_CONSIGNADO
            - EMPRESTIMO_CREDITO_PESSOAL_NAO_CONSIGNADO
            - EMPRESTIMO_HOME_EQUITY
            - EMPRESTIMO_MICROCREDITO_PRODUTIVO_ORIENTADO
            - EMPRESTIMO_CHEQUE_ESPECIAL
            - EMPRESTIMO_CONTA_GARANTIDA
          description: Modalidades de empréstimos ofertados para pessoas físicas
          example: ADIANTAMENTO_DEPOSITANTE
        fees:
          type: array
          items:
            $ref: '#/components/schemas/LoanFee'
          description: Lista
        interestRate:
          $ref: '#/components/schemas/LoanInterestRate'
        requiredWarranties:
          type: array
          items:
            $ref: '#/components/schemas/RequiredWarranty'
        termsConditions:
          type: string
          pattern: \w*\W*
          maxLength: 2000
          description: Campo aberto para informar as condições contratuais relativas ao produto ou serviço informado. Pode ser informada a URL referente ao endereço onde constam as condições informadas.
          example: 'https://empresaa1.com/personal_loans'
    BusinessLoan:
      type: object
      required:
        - type
        - fees
        - interestRate
        - requiredWarranties
      properties:
        type:
          type: string
          enum:
            - ADIANTAMENTO_DEPOSITANTE
            - EMPRESTIMO_MICROCREDITO_PRODUTIVO_ORIENTADO
            - EMPRESTIMO_CHEQUE_ESPECIAL
            - EMPRESTIMO_CONTA_GARANTIDA
            - EMPRESTIMO_CAPITAL_GIRO_PRAZO_VENCIMENTO_ATE_365_DIAS
            - EMPRESTIMO_CAPITAL_GIRO_PRAZO_VENCIMENTO_SUPERIOR_365_DIAS
            - EMPRESTIMO_CAPITAL_GIRO_ROTATIVO
          description: Modalidades de empréstimos ofertados para pessoas jurídicas
          example: ADIANTAMENTO_DEPOSITANTE
        fees:
          type: array
          items:
            $ref: '#/components/schemas/LoanFee'
          description: Lista
        interestRate:
          $ref: '#/components/schemas/LoanInterestRate'
        requiredWarranties:
          type: array
          items:
            $ref: '#/components/schemas/RequiredWarranty'
        termsConditions:
          type: string
          pattern: \w*\W*
          maxLength: 2000
          description: Campo aberto para informar as condições contratuais relativas ao produto ou serviço informado. Pode ser informada a URL referente ao endereço onde constam as condições informadas.
          example: 'https://empresaa1.com/personal_loans'
    LoanFee:
      type: object
      properties:
        service:
          $ref: '#/components/schemas/LoanService'
    LoanService:
      type: object
      required:
        - name
        - code
        - chargeTriggerInfo
        - prices
        - minimum
        - maximum
      properties:
        name:
          type: string
          pattern: \w*\W*
          maxLength: 50
          description: Nomes das Tarifas cobradas sobre Serviços relacionados à Modalidade informada do Empréstimo para pessoa física/jurídica.
          example: Adiantamento a Depositantes / Excesso Limite
        code:
          type: string
          pattern: \w*\W*
          maxLength: 30
          description: Sigla de identificação do serviço relacionado à Modalidade informada de Empréstimo para pessoa física/jurídica.
          example: ADIANT. DEPOSITANTE DD/MM
        chargingTriggerInfo:
          type: string
          pattern: \w*\W*
          maxLength: 2000
          description: Fatores geradores de cobrança que incidem sobre as Modalidades informada de Empréstimos para pessoa física/jurídica.
          example: Tarifa cobrada sobre saldo a descoberto em conta corrente a cada ocorrencia
        prices:
          type: array
          items:
            $ref: '#/components/schemas/Price'
        minimum:
          $ref: '#/components/schemas/MinimumPrice'
        maximum:
          $ref: '#/components/schemas/MaximumPrice'
    LoanInterestRate:
      type: object
      properties:
        applications:
          type: array
          items:
            $ref: '#/components/schemas/ApplicationRate'
        minimumRate:
          type: string
          format: '((-?[1-9]?\d{1,4}){1}(\.\d{1,4}){1}|NA)'
          description: 'Percentual mínimo cobrado (taxa efetiva) no mês de referência, para o Empréstimo contratado  A apuração pode acontecer com até 4 casas decimais. O preenchimento deve respeitar as 4 casas decimais, mesmo que venham preenchidas com zeros (representação de porcentagem p.ex: 0.1500. Este valor representa 15%. O valor 1 representa 100%)'
          example: '0.0456'
        maximumRate:
          type: string
          format: '((-?[1-9]?\d{1,4}){1}(\.\d{1,4}){1}|NA)'
          description: 'Percentual máximo cobrado (taxa efetiva) no mês de referência, para o Empréstimo contratado  A apuração pode acontecer com até 4 casas decimais. O preenchimento deve respeitar as 4 casas decimais, mesmo que venham preenchidas com zeros (representação de porcentagem p.ex: 0.1500. Este valor representa 15%. O valor 1 representa 100%)'
          example: '0.6865'
    ApplicationRate:
      type: object
      properties:
        interval:
          $ref: '#/components/schemas/Intervals'
        rate:
          type: string
          format: '((-?[1-9]?\d{1,4}){1}(\.\d{1,4}){1}|NA)'
          description: 'Percentual que corresponde a mediana da taxa efetiva cobrada do cliente pela contratação do Empréstimo, no intervalo informado. p.ex. ''9,8700%'' A apuração pode acontecer com até 4 casas decimais. O preenchimento deve respeitar as 4 casas decimais, mesmo que venham preenchidas com zeros (representação de porcentagem p.ex: 0.1500. Este valor representa 15%. O valor 1 representa 100%)'
          example: '0.0987'
      required:
        - interval
        - rate
    Intervals:
      type: string
      enum:
        - 1_QUARTIL_CLIENTES
        - 2_QUARTIL_CLIENTES
        - 3_QUARTIL_CLIENTES
        - 4_QUARTIL_CLIENTES
      description: 'Faixas para cobrança da taxa efetiva aplicada pela contratação do Empréstimo, no intervalo informado: 1º quartil de clientes, 2º quartil de clientes, 3º quartil de clientes e 4º quartil de clientes'
    RequiredWarranty:
      type: string
      enum:
        - CESSAO_DIREITOS_CREDITORIOS
        - CAUCAO
        - PENHOR
        - ALIENACAO_FIDUCIARIA
        - HIPOTECA
        - OPERCAOES_GARANTIDAS_PELO_GOVERNO
        - OUTRAS_GARANTIAS_NAO_FIDEJUSSORIAS
        - SEGUROS_ASSEMELHADOS
        - GARANTIA_FIDEJUSSORIA
        - BENS_ARRENDADOS
        - GARANTIAS_INTERNACIONAIS
        - OPERACOES_GARANTIDAS_OUTRAS_ENTIDADES
        - ACORDOS_COMPENSACAO
        - NAO_APLICAVEL
      maxLength: 50
      description: Campo aberto para informar as condições contratuais relativas à Modalidade de direitos creditórios descontados informada
      example: CESSAO_DIREITOS_CREDITORIOS
    CNPJ:
      type: object
      properties:
        cnpjNumber:
          type: string
          pattern: '(\d{2})(\d{3})(\d{3})'
          description: CNPJ
          maxLength: 14
          example: '50685362000135'
      required:
        - cnpjNumber
    CreditCardIndentification:
      type: object
      required:
        - product
        - creditCard
      properties:
        product:
          type: object
          required:
            - type
            - additionalInfo
          properties:
            type:
              type: string
              enum:
                - CLASSIC_NACIONAL
                - CLASSIC_INTERNACIONAL
                - GOLD
                - PLATINUM
                - INFINITE
                - ELECTRON
                - STANDARD_NACIONAL
                - STANDARD_INTERNACIONAL
                - ELETRONIC
                - BLACK
                - REDESHOP
                - MAESTRO_MASTERCARD_MAESTRO
                - GREEN
                - BLUE
                - BLUEBOX
                - PROFISSIONAL_LIBERAL
                - CHEQUE_ELETRONICO
                - CORPORATIVO
                - EMPRESARIAL
                - COMPRAS
                - OUTROS
              description: 'Categoria atribuída a um cartão de pagamento, sob uma certa denominação, que lhe agrega um conjunto de vantagens, diferenciando-o de acordo com o perfil do portador. Essa categoria é definida pelo BACEN e está contida no documento de nome ''Elaboração e Remessa de Informações Relativas aos Cartões de Pagamento  Emissores'''
              example: PLATINUM
            additionalInfo:
              type: string
              maxLength: 50
              pattern: \w*\W*
              description: Informações complementares se tipo de Cartão 'OUTROS'
        creditCard:
          type: object
          required:
            - network
            - additionalInfo
          properties:
            network:
              type: string
              enum:
                - VISA
                - MASTERCARD
                - AMERICAN_EXPRESS
                - DINERS_CLUB
                - HIPERCARD
                - BANDEIRA_PROPRIA
                - CHEQUE_ELETRONICO
                - ELO
                - OUTRAS
              description: 'Categoria de Bandeiras de Cartões. Bandeira é a detentora de todos os direitos e deveres da utilização da marca estampada no cartão, inclusive as bandeiras pertencentes aos emissores. Essas bandeiras estão definidas em documento do BACEN de nome ''Elaboração e Remessa de Informações Relativas aos Cartões de Pagamento  Emissores'''
              example: MASTERCARD
            additionalInfo:
              type: string
              maxLength: 50
              pattern: \w*\W*
              description: Informações complementares se tipo de Cartão 'OUTROS'
    CreditCardRewardsProgram:
      type: object
      required:
        - hasRewardProgram
      properties:
        hasRewardProgram:
          type: boolean
          description: Indicador da existência de programa de fidelidade/recompensa associado à conta
          example: false
        rewardProgramInfo:
          type: string
          maxLength: 2000
          pattern: \w*\W*
          description: Informações de termos e condições do programa de fidelidade/recompensa. Pode ser informada a URL referente ao endereço onde constam as condições informadas
          example: 'https://example.com/mobile-banking'
    CreditCardTermsConditions:
      type: object
      required:
        - minimumFeeRate
        - elegibilityCriteriaInfo
        - closingProcessInfo
      properties:
        minimumFeeRate:
          type: string
          pattern: '((-?[1-9]?\d{1,4}){1}(\.\d{1,4}){1}|NA)$'
          description: Percentual para pagamento mínimo sobre o saldo devedor da fatura.
          example: '0.25'
        additionalInfo:
          type: string
          maxLength: 500
          pattern: \w*\W*
          description: Campo aberto para detalhamento de taxas de juros
        elegibilityCriteriaInfo:
          type: string
          maxLength: 2000
          pattern: \w*\W*
          description: 'Informação sobre as condições e critérios de elegibilidade do emissor do cartão. Pode ser informada a URL referente ao endereço onde constam as condições informadas. URLs são limitadas a 2048 caracteres mas, para o contexto do Sistema Financeiro aberto, será adotado a metade deste tamanho.'
          example: 'https://empresaa1.com/creditcards_elegibility_criteria'
        closingProcessInfo:
          type: string
          maxLength: 2000
          pattern: \w*\W*
          description: 'Descrição dos procedimentos para encerramento da conta pós paga. Pode ser informada a URL referente ao endereço onde constam as condições informadas. URLs são limitadas a 2048 caracteres mas, para o contexto do Sistema Financeiro aberto, será adotado a metade deste tamanho.'
          example: 'https://empresaa1.com/creditcards_closing_process'
    CreditCardInterest:
      type: object
      required:
        - feeRate
        - instalmentRate
        - interestRates
      properties:
        feeRate:
          $ref: '#/components/schemas/InterestRate'
        instalmentRate:
          $ref: '#/components/schemas/InterestRate'
        interestRates:
          type: array
          items:
            type: object
            required:
              - code
              - prices
              - minimumRate
              - maximumRate
            properties:
              code:
                type: string
                enum:
                  - SAQUE_A_CREDITO
                  - PAGAMENTOS_CONTAS
                  - OUTROS
                description: Lista de outras operações de crédito
                example: SAQUE_A_CREDITO
              additionalInfo:
                type: string
                maxLength: 50
                pattern: \w*\W*
                description: Campo Texto para descrever outras operações de crédito marcadas como 'Outros'
                example: NA
              prices:
                type: array
                items:
                  required:
                    - interval
                    - rate
                  properties:
                    interval:
                      $ref: '#/components/schemas/Intervals'
                    rate:
                      type: string
                      pattern: '((-?[1-9]?\d{1,4}){1}(\.\d{1,4}){1}|NA)$'
                      maxLength: 9
                      description: 'Percentual que corresponde a mediana (taxa efetiva) aplicada para  outras operações de crédito, no período informado.'
                  example:
                    - interval: 1_QUARTIL_CLIENTES
                      rate: '0.1500'
                    - interval: 2_QUARTIL_CLIENTES
                      rate: '0.2000'
                    - interval: 3_QUARTIL_CLIENTES
                      rate: '0.3500'
                    - interval: 4_QUARTIL_CLIENTES
                      rate: '0.6800'
              minimumRate:
                type: string
                pattern: '((-?[1-9]?\d{1,4}){1}(\.\d{1,4}){1}|NA)$'
                maxLength: 9
                description: Percentual mínimo cobrado (taxa efetiva) para  outras operações de crédito do mês de referência.
                example: '0.0450'
              maximumRate:
                type: string
                pattern: '((-?[1-9]?\d{1,4}){1}(\.\d{1,4}){1}|NA)$'
                maxLength: 9
                description: Percentual máximo cobrado (taxa efetiva) para  outras operações de crédito do mês de referência.
                example: '0.8000'
          example:
            - code: "SAQUE_A_CREDITO"
              additionalInfo: "NA"
              prices:
                - interval: "1_QUARTIL_CLIENTES"
                  rate: "0.1500"
                - interval: "2_QUARTIL_CLIENTES"
                  rate: "0.2000"
                - interval: "3_QUARTIL_CLIENTES"
                  rate: "0.3500"
                - interval: "4_QUARTIL_CLIENTES"
                  rate: "0.6800"
              minimumRate: "0.0450"
              maximumRate: "0.7000"
            - code: "PAGAMENTOS_CONTAS"
              additionalInfo: "NA"
              prices:
                - interval: "1_QUARTIL_CLIENTES"
                  rate: "0.1500"
                - interval: "2_QUARTIL_CLIENTES"
                  rate: "0.2700"
                - interval: "3_QUARTIL_CLIENTES"
                  rate: "0.4000"
                - interval: "4_QUARTIL_CLIENTES"
                  rate: "0.4100"
              minimumRate: "0.0900"
              maximumRate: "0.5500"

    PersonalCreditCardResponse:
      type: object
      required:
        - data
        - links
        - meta
      properties:
        data:
          type: object
          required:
            - brand
          properties:
            brand:
              type: object
              required:
                - name
                - companies
              properties:
                name:
                  type: string
                  maxLength: 30
                  description: Nome da marca selecionada pela Organização responsável pelas contas de pagamento pós-pagas (cartão de crédito)
                  example: Organização A
                companies:
                  type: array
                  items:
                    required:
                      - name
                      - cnpjNumber
                    properties:
                      name:
                        type: string
                        maxLength: 80
                        description: 'Nome da Instituição, pertencente à marca, responsável pela comercialização dos produtos e serviços'
                        example: Empresa A1
                      cnpjNumber:
                        type: string
                        minLength: 14
                        maxLength: 14
                        description: Número completo do CNPJ da instituição responsável pelas contas de pagamento pós-pagas (cartões de crédito)
                        example: '45086338000178'
                      urlComplementaryList:
                        type: string
                        pattern: \w*\W*
                        maxLength: 1024
                        description: URL do link que conterá a lista complementar com os nomes e CNPJs agrupados sob o mesmo cnpjNumber. Os contidos nessa lista possuem as mesmas características para produtos e serviços. Endereço eletrônico de acesso ao canal.
                        example: 'https://empresaa1.com/branches-banking'
                      personalCreditCards:
                        type: array
                        items:
                          required:
                            - name
                            - identification
                            - rewardsProgram
                            - fees
                            - interest
                            - termsConditions
                          properties:
                            name:
                              type: string
                              maxLength: 50
                              description: Denominação/Identificação do nome da conta (cartão de crédito)
                              example: Cartão Universitário
                            identification:
                              $ref: '#/components/schemas/CreditCardIndentification'
                            rewardsProgram:
                              $ref: '#/components/schemas/CreditCardRewardsProgram'
                            fees:
                              type: array
                              items:
                                $ref: '#/components/schemas/CreditCardService'
                            interest:
                              $ref: '#/components/schemas/CreditCardInterest'
                            termsConditions:
                              $ref: '#/components/schemas/CreditCardTermsConditions'
        links:
          $ref: '#/components/schemas/Links'
        meta:
          $ref: '#/components/schemas/Meta'
    BusinessCreditCardResponse:
      type: object
      required:
        - data
        - links
        - meta
      properties:
        data:
          type: object
          required:
            - brand
          properties:
            brand:
              type: object
              required:
                - name
                - companies
              properties:
                name:
                  type: string
                  pattern: \w*\W*
                  maxLength: 30
                  description: Nome da marca selecionada pela Organização responsável pelas contas de pagamento pós-paga (cartão de crédito)
                  example: Organização A
                companies:
                  type: array
                  items:
                    required:
                      - name
                      - cnpjNumber
                    properties:
                      name:
                        type: string
                        maxLength: 80
                        description: 'Nome da Instituição, pertencente à marca, responsável pela comercialização dos produtos e serviços'
                        example: Empresa A1
                      cnpjNumber:
                        type: string
                        minLength: 14
                        maxLength: 14
                        pattern: '^(\d{14})$'
                        description: O CNPJ corresponde ao número de inscrição no Cadastro de Pessoa Jurídica.
                        example: '45086338000178'
                      urlComplementaryList:
                        type: string
                        pattern: \w*\W*
                        maxLength: 1024
                        description: URL do link que conterá a lista complementar com os nomes e CNPJs agrupados sob o mesmo cnpjNumber. Os contidos nessa lista possuem as mesmas características para produtos e serviços. Endereço eletrônico de acesso ao canal.
                        example: 'https://empresaa1.com/branches-banking'
                      businessCreditCards:
                        type: array
                        items:
                          required:
                            - name
                            - identification
                            - rewardsProgram
                            - fees
                            - interest
                            - termsConditions
                          properties:
                            name:
                              type: string
                              maxLength: 50
                              description: Denominação/Identificação do nome da conta
                              example: 'Cartão Microempreendedor Bem-Vindo'
                            identification:
                              $ref: '#/components/schemas/CreditCardIndentification'
                            rewardsProgram:
                              $ref: '#/components/schemas/CreditCardRewardsProgram'
                            fees:
                              type: array
                              items:
                                properties:
                                  service:
                                    $ref: '#/components/schemas/CreditCardService'
                            interest:
                              $ref: '#/components/schemas/CreditCardInterest'
                            termsConditions:
                              $ref: '#/components/schemas/CreditCardTermsConditions'
        links:
          $ref: '#/components/schemas/Links'
        meta:
          $ref: '#/components/schemas/Meta'
    CreditCardService:
      type: object
      required:
        - name
        - code
        - chargingTriggerInfo
      properties:
        name:
          type: string
          maxLength: 80
          description: 'Denominação de Serviços relacionados à Modalidade de Contas de Pagmento Pós-Pagas, para pessoa jurídica (Campo Livre)'
          example: ANUIDADE
        code:
          type: string
          maxLength: 30
          description: Sigla de identificação do Serviço relacionado à Modalidade de Contas de Pagamento Pós-Pagas para pessoa jurídica informada (Campo Livre)
          example: ANUIDADE_NACIONAL
        chargingTriggerInfo:
          type: string
          maxLength: 2000
          description: 'Fatos geradores de cobrança que incidem sobre as Modalidades de Contas de Pagamento Pós-Pagas informada, para pessoa jurídica. (Campo Livre)'
          example: 'Disponibilização de rede de estabelecimentos afiliados, instalada no País, para pagamentos de bens e serviços, cobrada no máximo uma vez a cada doze meses, admitido o parcelamento da cobrança'
        prices:
          type: array
          items:
            $ref: '#/components/schemas/Price'
          example:
            - interval: 1_QUARTIL_CLIENTES
              value: '45.40'
              currency: BRL
            - interval: 2_QUARTIL_CLIENTES
              value: '57.00'
              currency: BRL
            - interval: 3_QUARTIL_CLIENTES
              value: '62.00'
              currency: BRL
            - interval: 4_QUARTIL_CLIENTES
              value: '69.00'
              currency: BRL
        minimum:
          $ref: '#/components/schemas/MinimumPrice'
        maximum:
          $ref: '#/components/schemas/MaximumPrice'
    ResponsePersonalFinancingsList:
      type: object
      required:
        - data
        - links
        - meta
      properties:
        data:
          type: object
          required:
            - brand
          properties:
            brand:
              $ref: '#/components/schemas/PersonalFinancingBrand'
        links:
          $ref: '#/components/schemas/Links'
        meta:
          $ref: '#/components/schemas/Meta'
    PersonalFinancingBrand:
      type: object
      required:
        - name
        - companies
      properties:
        name:
          type: string
          pattern: \w*\W*
          maxLength: 30
          description: Nome da marca.
          example: Organização A
        companies:
          type: array
          items:
            $ref: '#/components/schemas/PersonalFinancingCompany'
          description: Lista de instituições pertencentes à marca
    PersonalFinancingCompany:
      type: object
      required:
        - name
        - cnpjNumber
        - personalFinancings
      properties:
        name:
          type: string
          pattern: \w*\W*
          maxLength: 80
          description: 'Nome da Instituição, pertencente à marca, responsável pela comercialização dos produtos e serviços'
          example: Empresa A1
        urlComplementaryList:
          type: string
          pattern: \w*\W*
          maxLength: 1024
          description: URL do link que conterá a lista complementar com os nomes e CNPJs agrupados sob o mesmo cnpjNumber. Os contidos nessa lista possuem as mesmas características para produtos e serviços. Endereço eletrônico de acesso ao canal.
          example: 'https://empresaa1.com/branches-banking'
        personalFinancings:
          type: array
          items:
            $ref: '#/components/schemas/PersonalFinancing'
          description: Lista de financiamentos
      allOf:
        - $ref: '#/components/schemas/CNPJ'
    PersonalFinancing:
      type: object
      required:
        - type
        - fees
        - interestRate
        - requiredWarranties
      properties:
        type:
          type: string
          enum:
            - FINANCIAMENTO_AQUISICAO_BENS_VEICULOS_AUTOMOTORES
            - FINANCIAMENTO_AQUISICAO_BENS_OUTROS_BENS
            - FINANCIAMENTO_MICROCREDITO
            - FINANCIAMENTO_RURAL_CUSTEIO
            - FINANCIAMENTO_RURAL_INVESTIMENTO
            - FINANCIAMENTO_RURAL_COMERCIALIZACAO
            - FINANCIAMENTO_RURAL_INDUSTRIALIZACAO
            - FINANCIAMENTO_IMOBILIARIO_SISTEMA_FINANCIERO_HABILITACAO_SFH
            - FINANCIAMENTO_IMOBILIARIO_SISTEMA_FINANCIERO_HABILITACAO_SFI
          description: 'Modalidades de financiamentos ofertados para pessoas físicas, conforme Circular 4015-Bacen. Segundo cartilha do Bacen: Financiamento é um contrato entre o cliente e uma instituição financeira, mas com, destinação específica como para a aquisição de veículo ou de bem imóvel, que funcionam como garantia para o crédito concedido'
          example: FINANCIAMENTO_AQUISICAO_BENS_VEICULOS_AUTOMOTORES
        fees:
          type: array
          items:
            $ref: '#/components/schemas/PersonalFinancingFee'
        interestRate:
          $ref: '#/components/schemas/FinancingInterestRate'
        requiredWarranties:
          type: array
          items:
            enum:
              - CESSAO_DIREITOS_CREDITORIOS
              - CAUCAO
              - PENHOR
              - ALIENACAO_FIDUCIARIA
              - HIPOTECA
              - OPERCAOES_GARANTIDAS_PELO_GOVERNO
              - OUTRAS_GARANTIAS_NAO_FIDEJUSSORIAS
              - SEGUROS_ASSEMELHADOS
              - GARANTIA_FIDEJUSSORIA
              - BENS_ARRENDADOS
              - GARANTIAS_INTERNACIONAIS
              - OPERACOES_GARANTIDAS_OUTRAS_ENTIDADES
              - ACORDOS_COMPENSACAO
              - NAO_APLICAVEL
            description: Relação de garantias exigidas
            example:
              - ALIENACAO_FIDUCIARIA
              - PENHOR
        termsConditions:
          type: string
          pattern: \w*\W*
          maxLength: 2000
          description: Campo aberto para informar as condições contratuais relativas ao produto ou serviço informado. Pode ser informada a URL referente ao endereço onde constam as condições informadas.
          example: 'https://empresaa1.com/personal_financing'
    PersonalFinancingFee:
      type: object
      properties:
        service:
          $ref: '#/components/schemas/FinancingService'
    FinancingService:
      type: object
      properties:
        name:
          type: string
          description: 'Nomes das Tarifas cobradas sobre Serviços ofertados à Modalidade de Financiamento, para pessoa física'
          example: 'Avaliação, Reavaliação e Substituição de Bens Recebidos em Garantia'
        code:
          type: string
          description: 'Sigla de identificação do serviço relacionado à Modalidade de Financiamento informada, para pessoa física. Campo aberto'
          example: AQBAM009
        chargingTriggerInfo:
          type: string
          description: 'Fatores geradores de cobrança que incidem sobre as Modalidades de Financiamentos, para pessoa física. Campo Livre'
          example: '570.00'
        prices:
          type: array
          items:
            $ref: '#/components/schemas/Price'
          example:
            - interval: 1_QUARTIL_CLIENTES
              value: '45.40'
              currency: BRL
            - interval: 2_QUARTIL_CLIENTES
              value: '57.00'
              currency: BRL
            - interval: 3_QUARTIL_CLIENTES
              value: '62.00'
              currency: BRL
            - interval: 4_QUARTIL_CLIENTES
              value: '69.00'
              currency: BRL
        minimum:
          $ref: '#/components/schemas/MinimumPrice'
        maximum:
          $ref: '#/components/schemas/MaximumPrice'
      required:
        - name
        - code
        - prices
        - minimum
        - maximum
    FinancingInterestRate:
      type: object
      properties:
        applications:
          type: array
          items:
            $ref: '#/components/schemas/ApplicationRate'
          example:
            - interval: 1_QUARTIL_CLIENTES
              rate: '0.0987'
            - interval: 2_QUARTIL_CLIENTES
              rate: '0.1600'
            - interval: 3_QUARTIL_CLIENTES
              rate: '0.3600'
            - interval: 4_QUARTIL_CLIENTES
              rate: '0.5890'
        minimumRate:
          type: string
          format: '((-?[1-9]?\d{1,4}){1}(\.\d{1,4}){1}|NA)'
          description: 'Percentual mínimo cobrado (taxa efetiva) no mês de referência, para o Financiamento contratado  A apuração pode acontecer com até 4 casas decimais. O preenchimento deve respeitar as 4 casas decimais, mesmo que venham preenchidas com zeros (representação de porcentagem p.ex: 0.1500. Este valor representa 15%. O valor 1 representa 100%)'
          example: '0.0456'
        maximumRate:
          type: string
          format: '((-?[1-9]?\d{1,4}){1}(\.\d{1,4}){1}|NA)'
          description: 'Percentual máximo cobrado (taxa efetiva) no mês de referência, para o Financiamento contratado  A apuração pode acontecer com até 4 casas decimais. O preenchimento deve respeitar as 4 casas decimais, mesmo que venham preenchidas com zeros (representação de porcentagem p.ex: 0.1500. Este valor representa 15%. O valor 1 representa 100%)'
          example: '0.6865'
      required:
        - applications
        - minimumRate
        - maximumRate
    ResponseBusinessFinancingsList:
      type: object
      required:
        - data
        - links
        - meta
      properties:
        data:
          type: object
          required:
            - brand
          properties:
            brand:
              $ref: '#/components/schemas/BusinessFinancingBrand'
        links:
          $ref: '#/components/schemas/Links'
        meta:
          $ref: '#/components/schemas/Meta'
    BusinessFinancingBrand:
      type: object
      required:
        - name
        - companies
      properties:
        name:
          type: string
          pattern: \w*\W*
          maxLength: 30
          description: Nome da marca.
          example: Organização A
        companies:
          type: array
          items:
            $ref: '#/components/schemas/BusinessFinancingCompany'
          description: Lista de instituições pertencentes à marga
    BusinessFinancingCompany:
      type: object
      required:
        - name
        - cnpjNumber
        - businessFinancings
      properties:
        name:
          type: string
          pattern: \w*\W*
          maxLength: 80
          description: 'Nome da Instituição, pertencente à marca, responsável pela comercialização dos produtos e serviços'
          example: Empresa A1
        urlComplementaryList:
          type: string
          pattern: \w*\W*
          maxLength: 1024
          description: URL do link que conterá a lista complementar com os nomes e CNPJs agrupados sob o mesmo cnpjNumber. Os contidos nessa lista possuem as mesmas características para produtos e serviços. Endereço eletrônico de acesso ao canal.
          example: 'https://empresaa1.com/branches-banking'
        businessFinancings:
          type: array
          items:
            $ref: '#/components/schemas/BusinessFinancing'
          description: Lista de financiamentos
      allOf:
        - $ref: '#/components/schemas/CNPJ'
    BusinessFinancing:
      type: object
      required:
        - type
        - fees
        - interestRate
        - requiredWarranties
      properties:
        type:
          type: string
          enum:
            - FINANCIAMENTO_AQUISICAO_BENS_VEICULOS_AUTOMOTORES
            - FINANCIAMENTO_AQUISICAO_BENS_OUTROS_BENS
            - FINANCIAMENTO_MICROCREDITO
            - FINANCIAMENTO_RURAL_CUSTEIO
            - FINANCIAMENTO_RURAL_INVESTIMENTO
            - FINANCIAMENTO_RURAL_COMERCIALIZACAO
            - FINANCIAMENTO_RURAL_INDUSTRIALIZACAO
            - FINANCIAMENTO_IMOBILIARIO_SISTEMA_FINANCIERO_HABILITACAO_SFH
            - FINANCIAMENTO_IMOBILIARIO_SISTEMA_FINANCIERO_HABILITACAO_SFI
          description: 'Modalidades de financiamentos ofertados para pessoas jurídicas, conforme Circular 4015-Bacen. Segundo cartilha do Bacen: Financiamento é um contrato entre o cliente e uma instituição financeira, mas com, destinação específica como para a aquisição de veículo ou de bem imóvel, que funcionam como garantia para o crédito concedido'
          example: FINANCIAMENTO_AQUISICAO_BENS_VEICULOS_AUTOMOTORES
        fees:
          type: array
          items:
            $ref: '#/components/schemas/BusinessFinancingFee'
        interestRate:
          $ref: '#/components/schemas/FinancingInterestRate'
        requiredWarranties:
          type: array
          items:
            enum:
              - CESSAO_DIREITOS_CREDITORIOS
              - CAUCAO
              - PENHOR
              - ALIENACAO_FIDUCIARIA
              - HIPOTECA
              - OPERCAOES_GARANTIDAS_PELO_GOVERNO
              - OUTRAS_GARANTIAS_NAO_FIDEJUSSORIAS
              - SEGUROS_ASSEMELHADOS
              - GARANTIA_FIDEJUSSORIA
              - BENS_ARRENDADOS
              - GARANTIAS_INTERNACIONAIS
              - OPERACOES_GARANTIDAS_OUTRAS_ENTIDADES
              - ACORDOS_COMPENSACAO
              - NAO_APLICAVEL
            description: Relação de garantias exigidas
            example: ALIENACAO_FIDUCIARIA
        termsConditions:
          type: string
          pattern: \w*\W*
          maxLength: 2000
          description: Campo aberto para informar as condições contratuais relativas ao produto ou serviço informado. Pode ser informada a URL referente ao endereço onde constam as condições informadas.
          example: 'https://empresaa1.com/personal_financing'
    BusinessFinancingFee:
      type: object
      properties:
        service:
          $ref: '#/components/schemas/FinancingService'
      required:
        - service
    ResponsePersonalInvoiceFinancingsList:
      type: object
      required:
        - data
        - links
        - meta
      properties:
        data:
          type: object
          required:
            - brand
          properties:
            brand:
              $ref: '#/components/schemas/PersonalInvoiceFinancingsBrand'
        links:
          $ref: '#/components/schemas/Links'
        meta:
          $ref: '#/components/schemas/Meta'
      example:
        data:
          brand:
            name: Organização A
            companies:
              - name: Empresa A1
                cnpjNumber: '45086338000178'
                urlComplementaryList: 'https://empresaa1.com/branches-banking'
                personalInvoiceFinancings:
                  - type: DESCONTO_DUPLICATAS
                    fees:
                      - service:
                          name: Informar Serviço para PF
                          code: NA
                          chargingTriggerInfo: 3% do valor do contrato
                          prices:
                            - interval: 1_QUARTIL_CLIENTES
                              value: '62.00'
                              currency: BRL
                            - interval: 2_QUARTIL_CLIENTES
                              value: '69.00'
                              currency: BRL
                            - interval: 3_QUARTIL_CLIENTES
                              value: '75.40'
                              currency: BRL
                            - interval: 4_QUARTIL_CLIENTES
                              value: '85.00'
                              currency: BRL
                          minimum:
                            value: '59.90'
                            currency: BRL
                          maximum:
                            value: '87.00'
                            currency: BRL
                    interestRate:
                      applications:
                        - interval: 1_QUARTIL_CLIENTES
                          rate: '0.0100'
                        - interval: 2_QUARTIL_CLIENTES
                          rate: '0.0200'
                        - interval: 3_QUARTIL_CLIENTES
                          rate: '0.0390'
                        - interval: 4_QUARTIL_CLIENTES
                          rate: '0.0455'
                      minimumRate: '0.0015'
                      maximumRate: '0.5100'
                    requiredWarranties: "CESSAO_DIREITOS_CREDITORIOS"
                    termsConditions: 'https://empresaa1.com/business_invoice_financings'
        links:
          self: 'https://api.banco.com.br/open-banking/products-services/v1/business-invoice-financings'
          first: 'https://api.banco.com.br/open-banking/products-services/v1/business-invoice-financings'
          prev: ""
          next: ""
          last: 'https://api.banco.com.br/open-banking/products-services/v1/business-invoice-financings'
        meta:
          totalRecords: 1
          totalPages: 1
    PersonalInvoiceFinancingsBrand:
      type: object
      required:
        - name
        - companies
      properties:
        name:
          type: string
          pattern: \w*\W*
          maxLength: 30
          description: Nome da marca.
          example: Marca A
        companies:
          type: array
          items:
            $ref: '#/components/schemas/PersonalInvoiceFinancingsCompanies'
          description: Lista de instituições pertencentes à marga
    PersonalInvoiceFinancingsCompanies:
      type: object
      required:
        - name
        - cnpjNumber
        - personalInvoiceFinancings
      properties:
        name:
          type: string
          pattern: \w*\W*
          maxLength: 30
          description: 'Nome da Instituição, pertencente à marca, responsável pela comercialização dos produtos e serviços'
          example: Empresa da Marca A
        urlComplementaryList:
          type: string
          pattern: \w*\W*
          maxLength: 1024
          description: URL do link que conterá a lista complementar com os nomes e CNPJs agrupados sob o mesmo cnpjNumber. Os contidos nessa lista possuem as mesmas características para produtos e serviços. Endereço eletrônico de acesso ao canal.
          example: 'https://example.com/mobile-banking'
        personalInvoiceFinancings:
          type: array
          items:
            $ref: '#/components/schemas/PersonalInvoiceFinancings'
          description: Lista de adiantamento de recebíveis
      allOf:
        - $ref: '#/components/schemas/CNPJ'
    PersonalInvoiceFinancings:
      type: object
      required:
        - type
        - fees
        - interestRate
        - requiredWarranties
      properties:
        type:
          type: string
          enum:
            - DESCONTO_DUPLICATAS
            - DESCONTO_CHEQUES
            - ANTECIPACAO_FATURA_CARTAO_CREDITO
            - OUTROS_DIREITOS_CREDITORIOS_DESCONTADOS
            - OUTROS_TÍTULOS_DESCONTADOS
          description: 'Modalidades de direitos creditórios descontados ofertados para pessoas Físicas, conforme Circular 4015-Bacen. Direito creditório descontado é a antecipação de créditos relativos por ex. ao: desconto de duplicatas, desconto de cheques,antecipação de fatura de cartão de crédito'
        fees:
          type: array
          items:
            $ref: '#/components/schemas/PersonalInvoiceFinancingsFees'
        interestRate:
          $ref: '#/components/schemas/PersonalInvoiceFinancingsInterestRates'
        requiredWarranties:
          type: string
          enum:
            - CESSAO_DIREITOS_CREDITORIOS
            - CAUCAO
            - PENHOR
            - ALIENACAO_FIDUCIARIA
            - HIPOTECA
            - OPERACOES_GARANTIDAS_GOVERNO
            - OUTRAS_GARANTIAS_NAO_FIDEJUSSORIAS
            - SEGUROS_ASSEMELHADOS
            - GARANTIA_FIDEJUSSORIA
            - BENS_ARRENDADOS
            - GARANTIAS_INTERNACIONAIS
            - OPERACOES_GARANTIDAS_OUTRAS_ENTIDADE
            - ACORDOS_COMPENSACAO
            - NAO_APLICAVEL
          description: Relação de garantias exigidas
        termsConditions:
          type: string
          pattern: \w*\W*
          maxLength: 2000
          description: Campo aberto para informar as condições contratuais relativas ao produto ou serviço informado. Pode ser informada a URL referente ao endereço onde constam as condições informadas.
          example: ''
    PersonalInvoiceFinancingsFees:
      type: object
      properties:
        service:
          type: object
          required:
            - name
            - code
            - chargingTriggerInfo
            - prices
            - minimum
            - maximum
          properties:
            name:
              type: string
              description: 'Nomes das Tarifas cobradas sobre Serviços ofertados à Modalidade de direitos creditórios descontados, para pessoa física. (Campo Livre)'
            code:
              type: string
              description: 'Sigla de identificação do serviço relacionado à Modalidade de direitos creditórios descontados, para pessoa física. Campo aberto'
            chargingTriggerInfo:
              type: string
              description: 'Fatores geradores de cobrança que incidem sobre as Modalidades de direitos creditórios descontados, para pessoa física. Campo Livre'
            prices:
              type: array
              items:
                $ref: '#/components/schemas/Price'
            minimum:
              type: object
              items:
                $ref: '#/components/schemas/MinimumPrice'
            maximum:
              type: object
              items:
                $ref: '#/components/schemas/MaximumPrice'
      required:
        - service
    PersonalInvoiceFinancingsInterestRates:
      type: object
      properties:
        applications:
          type: array
          items:
            type: object
            required:
              - interval
              - rate
            properties:
              interval:
                type: string
                enum:
                  - 1_QUARTIL_CLIENTES
                  - 2_QUARTIL_CLIENTES
                  - 3_QUARTIL_CLIENTES
                  - 4_QUARTIL_CLIENTES
                example: 1_QUARTIL_CLIENTES
              rate:
                type: string
                description: |
                  Percentual que corresponde a mediana da taxa efetiva cobrada do cliente pela contratação dos Direitos Creditórios Descontados, no intervalo informado. p.ex. '9,8700%' A apuração pode acontecer com até 4 casas decimais. O preenchimento deve respeitar as 4 casas decimais, mesmo que venham preenchidas com zeros (representação de porcentagem p.ex: 0.15. Este valor representa 15%. O valor 1 representa 100%)
                pattern: '((-?[1-9]?\d{1,4}){1}(\.\d{1,4}){1}|NA)$'
        minimumRate:
          type: string
          description: |
            Percentual mínimo cobrado (taxa efetiva) no mês de referência, para os Direitos Creditórios Descontados contratado  A apuração pode acontecer com até 4 casas decimais. O preenchimento deve respeitar as 4 casas decimais, mesmo que venham preenchidas com zeros (representação de porcentagem p.ex: 0.15. Este valor representa 15%. O valor 1 representa 100%)
          pattern: '((-?[1-9]?\d{1,4}){1}(\.\d{1,4}){1}|NA)$'
        maximumRate:
          type: string
          description: |
            Percentual máximo cobrado (taxa efetiva) no mês de referência, para os Direitos Creditórios Descontados contratado  A apuração pode acontecer com até 4 casas decimais. O preenchimento deve respeitar as 4 casas decimais, mesmo que venham preenchidas com zeros (representação de porcentagem p.ex: 0.15. Este valor representa 15%. O valor 1 representa 100%)
          pattern: '((-?[1-9]?\d{1,4}){1}(\.\d{1,4}){1}|NA)$'
      required:
        - applications
        - minimumRate
        - maximumRate
    ResponseBusinessInvoiceFinancingsList:
      type: object
      required:
        - data
        - links
        - meta
      properties:
        data:
          type: object
          required:
            - brand
          properties:
            brand:
              $ref: '#/components/schemas/BusinessInvoiceFinancingsBrand'
        links:
          $ref: '#/components/schemas/Links'
        meta:
          $ref: '#/components/schemas/Meta'
      example:
        data:
          brand:
            name: Organização A
            companies:
              - name: Empresa A1
                cnpjNumber: '45086338000178'
                urlComplementaryList: 'https://empresaa1.com/branches-banking'
                businessInvoiceFinancings:
                  - type: DESCONTO_DUPLICATAS
                    fees:
                      - service:
                          name: Informar Serviço para PJ
                          code: NA
                          chargingTriggerInfo: 3% do valor do contrato
                          prices:
                            - interval: 1_QUARTIL_CLIENTES
                              value: '62.00'
                              currency: BRL
                            - interval: 2_QUARTIL_CLIENTES
                              value: '69.00'
                              currency: BRL
                            - interval: 3_QUARTIL_CLIENTES
                              value: '75.40'
                              currency: BRL
                            - interval: 4_QUARTIL_CLIENTES
                              value: '85.00'
                              currency: BRL
                          minimum:
                            value: '59.90'
                            currency: BRL
                          maximum:
                            value: '87.00'
                            currency: BRL
                    interestRate:
                      applications:
                        - interval: 1_QUARTIL_CLIENTES
                          rate: '0.0100'
                        - interval: 2_QUARTIL_CLIENTES
                          rate: '0.0200'
                        - interval: 3_QUARTIL_CLIENTES
                          rate: '0.0390'
                        - interval: 4_QUARTIL_CLIENTES
                          rate: '0.0455'
                      minimumRate: '0.0015'
                      maximumRate: '0.5100'
                    requiredWarranties:
                      - CESSAO_DIREITOS_CREDITORIOS
                    termsConditions: 'https://empresaa1.com/business_invoice_financings'
        links:
          self: 'https://api.banco.com.br/open-banking/products-services/v1/business-invoice-financings'
          first: 'https://api.banco.com.br/open-banking/products-services/v1/business-invoice-financings'
          prev: ""
          next: ""
          last: 'https://api.banco.com.br/open-banking/products-services/v1/business-invoice-financings'
        meta:
          totalRecords: 1
          totalPages: 1
    BusinessInvoiceFinancingsBrand:
      type: object
      required:
        - name
        - companies
      properties:
        name:
          type: string
          pattern: \w*\W*
          maxLength: 30
          description: Nome da marca.
          example: Marca A
        companies:
          type: array
          items:
            $ref: '#/components/schemas/BusinessInvoiceFinancingsCompanies'
          description: Lista de instituições pertencentes à marga
    BusinessInvoiceFinancingsCompanies:
      type: object
      required:
        - name
        - cnpjNumber
        - businessInvoiceFinancings
      properties:
        name:
          type: string
          pattern: \w*\W*
          maxLength: 30
          description: 'Nome da Instituição, pertencente à marca, responsável pela comercialização das modalidades de Direitos Creditórios Descontados para Pessoas Jurídicas consultadas. p.ex.''Empresa da Organização A'''
          example: Empresa da Marca A
        urlComplementaryList:
          type: string
          pattern: \w*\W*
          maxLength: 1024
          description: |
            URL do link que conterá a lista complementar com os nomes e CNPJs agrupados sob o mesmo cnpjNumber. Os contidos nessa lista possuem as mesmas características para produtos e serviços. Endereço eletrônico de acesso ao canal. URLs são limitadas a 2048 caracteres mas, para o contexto do Sistema Financeiro aberto, será adotado a metade deste tamanho. Ex. 'https://example.com/mobile-banking'
          example: 'https://example.com/mobile-banking'
        businessInvoiceFinancings:
          type: array
          items:
            $ref: '#/components/schemas/BusinessInvoiceFinancings'
          description: Lista de adiantamento de recebíveis
      allOf:
        - $ref: '#/components/schemas/CNPJ'
    BusinessInvoiceFinancings:
      type: object
      required:
        - type
        - fees
        - interestRate
        - requiredWarranties
      properties:
        type:
          type: string
          enum:
            - DESCONTO_DUPLICATAS
            - DESCONTO_CHEQUES
            - ANTECIPACAO_FATURA_CARTAO_CREDITO
            - OUTROS_DIREITOS_CREDITORIOS_DESCONTADOS
            - OUTROS_TÍTULOS_DESCONTADOS
          description: 'Modalidades de direitos creditórios descontados ofertados para pessoas Jurídicas, conforme Circular 4015-Bacen. Direito creditório descontado é a antecipação de créditos relativos por ex. ao: desconto de duplicatas, desconto de cheques,antecipação de fatura de cartão de crédito'
        fees:
          type: array
          items:
            $ref: '#/components/schemas/BusinessInvoiceFinancingsFees'
        interestRate:
          $ref: '#/components/schemas/BusinessInvoiceFinancingsInterestRates'
        requiredWarranties:
          type: array
          items:
            type: string
            enum:
              - CESSAO_DIREITOS_CREDITORIOS
              - CAUCAO
              - PENHOR
              - ALIENACAO_FIDUCIARIA
              - HIPOTECA
              - OPERCAOES_GARANTIDAS_PELO_GOVERNO
              - OUTRAS_GARANTIAS_NAO_FIDEJUSSORIAS
              - SEGUROS_ASSEMELHADOS
              - GARANTIA_FIDEJUSSORIA
              - BENS_ARRENDADOS
              - GARANTIAS_INTERNACIONAIS
              - OPERACOES_GARANTIDAS_OUTRAS_ENTIDADES
              - ACORDOS_COMPENSACAO
              - NAO_APLICAVEL
          description: Relação de garantias exigidas
        termsConditions:
          type: string
          pattern: \w*\W*
          maxLength: 2000
          description: Campo aberto para informar as condições contratuais relativas ao produto ou serviço informado. Pode ser informada a URL referente ao endereço onde constam as condições informadas.
          example: ''
    BusinessInvoiceFinancingsFees:
      type: object
      required:
        - service
      properties:
        service:
          type: object
          properties:
            name:
              type: string
              pattern: \w*\W*
              description: 'Nomes das Tarifas cobradas sobre Serviços ofertados à Modalidade de Direitos Creditórios Descontados, para pessoa jurídica. (Campo Livre). p.ex.  ''Avaliação de Garantia Hipotecária, Avaliação de Propriedade Rural e Parecer Técnico para Prorrogação de Operações Rurais'''
            code:
              type: string
              pattern: \w*\W*
              description: 'Sigla de identificação do serviço relacionado à Modalidade de direitos creditórios descontados, para pessoa jurídica. Campo aberto'
            chargingTriggerInfo:
              type: string
              pattern: \w*\W*
              description: 'Fatores geradores de cobrança que incidem sobre as Modalidades de direitos creditórios descontados, para pessoa jurídica. Campo Livre'
            prices:
              type: array
              items:
                $ref: '#/components/schemas/Price'
            minimum:
              $ref: '#/components/schemas/MinimumPrice'
            maximum:
              $ref: '#/components/schemas/MaximumPrice'
          required:
            - name
            - code
            - chargingTriggerInfo
            - prices
            - minimum
            - maximum
    BusinessInvoiceFinancingsInterestRates:
      type: object
      properties:
        applications:
          type: array
          items:
            type: object
            required:
              - interval
              - rate
            properties:
              interval:
                type: string
                enum:
                  - 1_QUARTIL_CLIENTES
                  - 2_QUARTIL_CLIENTES
                  - 3_QUARTIL_CLIENTES
                  - 4_QUARTIL_CLIENTES
                example: 1_QUARTIL_CLIENTES
              rate:
                type: string
                description: |
                  Percentual que corresponde a mediana da taxa efetiva cobrada do cliente pela contratação dos Direitos Creditórios Descontados, no intervalo informado. p.ex. '9,8700%' A apuração pode acontecer com até 4 casas decimais. O preenchimento deve respeitar as 4 casas decimais, mesmo que venham preenchidas com zeros (representação de porcentagem p.ex: 0.15. Este valor representa 15%. O valor 1 representa 100%)
                pattern: '((-?[1-9]?\d{1,4}){1}(\.\d{1,4}){1}|NA)$'
        minimumRate:
          type: string
          description: |
            Percentual mínimo cobrado (taxa efetiva) no mês de referência, para os Direitos Creditórios Descontados contratado  A apuração pode acontecer com até 4 casas decimais. O preenchimento deve respeitar as 4 casas decimais, mesmo que venham preenchidas com zeros (representação de porcentagem p.ex: 0.15. Este valor representa 15%. O valor 1 representa 100%)
          pattern: '((-?[1-9]?\d{1,4}){1}(\.\d{1,4}){1}|NA)$'
        maximumRate:
          type: string
          description: |
            Percentual máximo cobrado (taxa efetiva) no mês de referência, para os Direitos Creditórios Descontados contratado  A apuração pode acontecer com até 4 casas decimais. O preenchimento deve respeitar as 4 casas decimais, mesmo que venham preenchidas com zeros (representação de porcentagem p.ex: 0.15. Este valor representa 15%. O valor 1 representa 100%)
          pattern: '((-?[1-9]?\d{1,4}){1}(\.\d{1,4}){1}|NA)$'
      required:
        - applications
        - minimumRate
        - maximumRate
    Price:
      type: object
      required:
        - interval
        - value
        - currency
      properties:
        interval:
          $ref: '#/components/schemas/Intervals'
        value:
          type: string
          pattern: '^((\d{1,9}\.\d{2}){1}|NA)$'
          maxLength: 12
          x-cds-type: AmountString
          description: 'Valor da mediana da tarifa, relativa ao serviço ofertado, informado no período.'
          example: '45.40'
        currency:
          type: string
          pattern: '^(\w{3}){1}$'
          maxLength: 3
          x-cds-type: CurrencyString
          description: 'Moeda referente ao valor da Tarifa, segundo modelo ISO-4217.'
          example: BRL
    MinimumPrice:
      type: object
      required:
        - value
        - currency
      properties:
        value:
          type: string
          pattern: '^((\d{1,9}\.\d{2}){1}|NA)$'
          maxLength: 12
          x-cds-type: AmountString
          description: Valor mínimo cobrado para a tarifa de serviços sobre a base de clientes no mês de referência
          example: '39.90'
        currency:
          type: string
          pattern: '^(\w{3}){1}$'
          maxLength: 3
          x-cds-type: CurrencyString
          description: 'Moeda referente ao valor mínimo da Tarifa, segundo modelo ISO-4217'
          example: BRL
    MaximumPrice:
      type: object
      required:
        - value
        - currency
      properties:
        value:
          type: string
          pattern: '^((\d{1,9}\.\d{2}){1}|NA)$'
          maxLength: 12
          x-cds-type: AmountString
          description: Valor máximo cobrado para a tarifa de serviços sobre a base de clientes no mês de referência
          example: '71.00'
        currency:
          type: string
          pattern: '^(\w{3}){1}$'
          maxLength: 3
          x-cds-type: CurrencyString
          description: 'Moeda referente ao valor mínimo da Tarifa, segundo modelo ISO-4217'
          example: BRL
    InterestRate:
      type: object
      properties:
        prices:
          type: array
          items:
            type: object
            required:
              - interval
              - rate
            properties:
              interval:
                type: string
                enum:
                  - 1_QUARTIL_CLIENTES
                  - 2_QUARTIL_CLIENTES
                  - 3_QUARTIL_CLIENTES
                  - 4_QUARTIL_CLIENTES
              rate:
                type: string
                description: |
                  Percentual que corresponde a mediana da taxa efetiva cobrada do cliente pela contratação dos Direitos Creditórios Descontados, no intervalo informado. p.ex. '9,8700%' A apuração pode acontecer com até 4 casas decimais. O preenchimento deve respeitar as 4 casas decimais, mesmo que venham preenchidas com zeros (representação de porcentagem p.ex: 0.15. Este valor representa 15%. O valor 1 representa 100%)
                pattern: '((-?[1-9]?\d{1,4}){1}(\.\d{1,4}){1}|NA)'
        minimumRate:
          type: string
          description: |
            Percentual mínimo cobrado (taxa efetiva) no mês de referência, para os Direitos Creditórios Descontados contratado  A apuração pode acontecer com até 4 casas decimais. O preenchimento deve respeitar as 4 casas decimais, mesmo que venham preenchidas com zeros (representação de porcentagem p.ex: 0.15. Este valor representa 15%. O valor 1 representa 100%)
          pattern: '((-?[1-9]?\d{1,4}){1}(\.\d{1,4}){1}|NA)'
        maximumRate:
          type: string
          description: |
            Percentual máximo cobrado (taxa efetiva) no mês de referência, para os Direitos Creditórios Descontados contratado  A apuração pode acontecer com até 4 casas decimais. O preenchimento deve respeitar as 4 casas decimais, mesmo que venham preenchidas com zeros (representação de porcentagem p.ex: 0.15. Este valor representa 15%. O valor 1 representa 100%)
          pattern: '((-?[1-9]?\d{1,4}){1}(\.\d{1,4}){1}|NA)'
      example:
        prices:
          - interval: 1_QUARTIL_CLIENTES
            rate: '0.0987'
          - interval: 2_QUARTIL_CLIENTES
            rate: '0.1600'
          - interval: 3_QUARTIL_CLIENTES
            rate: '0.3600'
          - interval: 4_QUARTIL_CLIENTES
            rate: '0.5890'
        minimumRate: '0.0845'
        maximumRate: '0.9000'
      required:
        - prices
        - minimumRate
        - maximumRate
    Links:
      type: object
      properties:
        self:
          type: string
          description: URL da página atualmente requisitada
          example: 'https://api.banco.com.br/open-banking/products-services/v1/<resource>'
        first:
          type: string
          description: URL da primeira página de registros
          example: 'https://api.banco.com.br/open-banking/products-services/v1/<resource>'
        prev:
          type: string
          description: URL da página anterior de registros
        next:
          type: string
          description: URL da próxima página de registros
        last:
          type: string
          description: URL da última página de registros
          example: 'https://api.banco.com.br/open-banking/products-services/v1/<resource>'
    Meta:
      type: object
      properties:
        totalRecords:
          type: integer
          description: Total de registros encontrados
          example: 1
        totalPages:
          type: integer
          description: Total de páginas para os registros encontrados
          example: 1
      required:
        - totalRecords
        - totalPages
  securitySchemes:
    APIKey1:
      name: API Key
      type: apiKey
      in: query
    APIKey2:
      name: API Key
      type: apiKey
      in: query
