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

# Criar uma Cobrança Dinâmica com Vencimento

> Use este endpoint para criar uma cobrança Pix com vencimento (cobrança com vencimento) com regras de pagamento complexas incluindo multas, juros, descontos e abatimentos.

**Notas:**
- Similar aos boletos tradicionais com capacidade de pagamento via Pix
- O vencimento define quando o pagamento é esperado
- Suporta cálculos complexos de valores com multas, juros, descontos e abatimentos
- Requer informações completas do devedor e do recebedor
- O ID da transação (txId) deve ser único entre todas as cobranças
- A cobrança permanece válida por um período configurável após o vencimento



## OpenAPI

````yaml pt/openapi/v3-current/indirect-pix.yaml POST /v1/collections/duedate
openapi: 3.0.3
info:
  title: Plugin BR Pix Indireto - API Completa
  description: |
    API completa para o sistema brasileiro de pagamentos instantâneos Pix,
    incluindo operações de dicionário de chaves Pix, geração/decodificação de
    QR Code, transações e limites de transações.
  version: 1.0.0
servers:
  - url: https://plugin-pix-indirect.api.lerian.net
security:
  - bearerAuth: []
paths:
  /v1/collections/duedate:
    post:
      tags:
        - Collections API
      summary: Criar uma Cobrança Dinâmica com Vencimento
      description: >-
        Use este endpoint para criar uma cobrança Pix com vencimento (cobrança
        com vencimento) com regras de pagamento complexas incluindo multas,
        juros, descontos e abatimentos.


        **Notas:**

        - Similar aos boletos tradicionais com capacidade de pagamento via Pix

        - O vencimento define quando o pagamento é esperado

        - Suporta cálculos complexos de valores com multas, juros, descontos e
        abatimentos

        - Requer informações completas do devedor e do recebedor

        - O ID da transação (txId) deve ser único entre todas as cobranças

        - A cobrança permanece válida por um período configurável após o
        vencimento
      parameters:
        - name: X-Account-Id
          in: header
          description: ID da Conta (formato UUID)
          required: true
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateDueDateCollectionInput'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DueDateCollectionOutput'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorFormat'
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorFormat'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorFormat'
      deprecated: false
      security:
        - bearerAuth: []
components:
  schemas:
    CreateDueDateCollectionInput:
      properties:
        additionalInfo:
          additionalProperties:
            type: string
          description: AdditionalInfo é um mapa de chave-valor para informações adicionais
          example:
            customerId: '67890'
            orderId: '12345'
          type: object
        amount:
          allOf:
            - $ref: '#/components/schemas/AmountObject'
          description: Amount é o objeto de configuração de valor (obrigatório)
        debtor:
          allOf:
            - $ref: '#/components/schemas/DebtorInput'
          description: Debtor é a informação do devedor (obrigatório)
        description:
          description: >-
            Description é uma mensagem ou descrição personalizada para a
            cobrança
          example: 'Pagamento do pedido #12345'
          type: string
        dueDate:
          description: >-
            DueDate é a data de vencimento da cobrança no formato YYYY-MM-DD
            (ISO8601)
          example: '2024-12-31'
          type: string
        locationInformation:
          allOf:
            - $ref: '#/components/schemas/LocationInformationDTO'
          description: >-
            LocationInformation contém os dados de localização do
            estabelecimento para geração do QR code
        metadata:
          additionalProperties: {}
          description: >-
            Metadata é um mapa opcional para pares de chave-valor personalizados
            (máx. 50 chaves)
          type: object
        receiverKey:
          description: Chave Pix que receberá o pagamento
          example: '+5511999999999'
          type: string
        tags:
          description: Tags é um array de tags personalizadas para categorização
          example:
            - ecommerce
            - subscription
          items:
            type: string
          type: array
        txId:
          description: TxID é o identificador único de transação para esta cobrança
          example: TXabcdefghijklmno123456789
          type: string
        validAfterDue:
          description: >-
            ValidAfterDue é o número de dias após a data de vencimento em que a
            cobrança permanece válida
          example: 5
          minimum: 0
          type: integer
      required:
        - amount
        - debtor
        - dueDate
        - receiverKey
        - txId
        - validAfterDue
      type: object
    DueDateCollectionOutput:
      properties:
        additionalInfo:
          additionalProperties:
            type: string
          description: >-
            AdditionalInfo é um mapa de chave-valor para informações adicionais
            (opcional)
          example:
            customerId: '67890'
            orderId: '12345'
          type: object
        amount:
          allOf:
            - $ref: '#/components/schemas/AmountObject'
          description: Amount é o objeto de configuração do valor (obrigatório)
        createdAt:
          description: >-
            CreatedAt é o timestamp de quando a cobrança foi criada
            (obrigatório)
          example: '2024-01-15T10:30:00Z'
          type: string
        debtor:
          allOf:
            - $ref: '#/components/schemas/DebtorOutput'
          description: Debtor é a informação do devedor (obrigatório)
        deletedAt:
          description: >-
            DeletedAt é o timestamp de quando a cobrança foi excluída (opcional,
            anulável)
          example: '2024-01-25T10:30:00Z'
          type: string
        description:
          description: Description é a descrição personalizada da cobrança (opcional)
          example: 'Payment for order #12345'
          type: string
        dueDate:
          description: >-
            DueDate é a data de vencimento da cobrança no formato YYYY-MM-DD
            (obrigatório)
          example: '2024-12-31'
          type: string
        emv:
          description: EMV é o payload do QR code no formato EMV (obrigatório)
          example: 00020126580014br.gov.bcb.pix...
          type: string
        id:
          description: ID é o identificador único da cobrança (obrigatório)
          example: 550e8400-e29b-41d4-a716-446655440010
          type: string
        locationUrl:
          description: >-
            LocationURL é a URL para acessar a localização/QR code da cobrança
            (obrigatório)
          example: https://api.example.com/qr/550e8400
          type: string
        metadata:
          additionalProperties: {}
          description: Metadata são os metadados personalizados associados a esta cobrança
          type: object
        receiver:
          allOf:
            - $ref: '#/components/schemas/ReceiverOutput'
          description: Receiver é a informação do recebedor (obrigatório)
        receiverKey:
          description: Chave Pix que receberá o pagamento
          example: '+5511999999999'
          type: string
        review:
          description: Review é o número da revisão da cobrança (obrigatório)
          example: 0
          type: integer
        status:
          description: >-
            Status é o status atual da cobrança (obrigatório)

            Valores válidos: ACTIVE, COMPLETED, REMOVED_BY_RECEIVER,
            REMOVED_BY_PSP
          example: ACTIVE
          type: string
        tags:
          description: Tags é um array de tags personalizadas (opcional)
          example:
            - ecommerce
            - subscription
          items:
            type: string
          type: array
        txId:
          description: TxID é o identificador da transação (obrigatório)
          example: TXabcdefghijklmno123456789
          type: string
        updatedAt:
          description: UpdatedAt é o timestamp da última atualização (obrigatório)
          example: '2024-01-20T14:45:00Z'
          type: string
        validAfterDue:
          description: >-
            ValidAfterDue é o número de dias após a data de vencimento em que a
            cobrança permanece válida (obrigatório)
          example: 5
          type: integer
      type: object
    ErrorFormat:
      type: object
      description: A mensagem de erro da resposta.
      required:
        - code
        - title
        - message
      properties:
        code:
          type: string
          description: Um identificador único e estável para o erro.
        title:
          type: string
          description: Um breve resumo do problema.
        message:
          type: string
          description: Orientação detalhada para resolver o erro.
    AmountObject:
      properties:
        abatement:
          allOf:
            - $ref: '#/components/schemas/AbatementObject'
          description: Abatement é a configuração de abatimento (opcional)
        discount:
          allOf:
            - $ref: '#/components/schemas/DiscountObject'
          description: Discount é a configuração de desconto (opcional)
        fine:
          allOf:
            - $ref: '#/components/schemas/FineObject'
          description: Fine é a configuração de multa (opcional)
        interest:
          allOf:
            - $ref: '#/components/schemas/InterestObject'
          description: Interest é a configuração de juros (opcional)
        original:
          description: >-
            Original é o valor original da cobrança em formato decimal com 2
            casas decimais
          example: '100.00'
          type: string
      required:
        - original
      type: object
    DebtorInput:
      properties:
        address:
          description: Address é o endereço do devedor (opcional)
          example: Rua das Flores, 123
          type: string
        city:
          description: City é a cidade do devedor (opcional)
          example: São Paulo
          type: string
        document:
          description: >-
            Document é o CPF (11 dígitos) ou CNPJ (14 dígitos) do devedor
            (obrigatório)
          example: '12345678901'
          type: string
        email:
          description: Email é o endereço de e-mail do devedor (opcional)
          example: joao@example.com
          type: string
        name:
          description: Name é o nome completo do devedor (obrigatório)
          example: João da Silva
          type: string
        state:
          description: State é o estado do devedor (opcional)
          example: SP
          type: string
        zipCode:
          description: ZipCode é o CEP do devedor (opcional)
          example: 01310-100
          type: string
      required:
        - document
        - name
      type: object
    LocationInformationDTO:
      properties:
        categoryCode:
          description: CategoryCode é o código de categoria do estabelecimento (MCC)
          example: '5411'
          type: string
        merchantCity:
          description: MerchantCity é a cidade onde o estabelecimento está localizado
          example: São Paulo
          type: string
        merchantName:
          description: MerchantName é o nome do estabelecimento
          example: Loja ABC
          type: string
        postalCode:
          description: PostalCode é o CEP do estabelecimento
          example: 01310-100
          type: string
      type: object
    DebtorOutput:
      properties:
        address:
          description: Address é o endereço do devedor (opcional)
          example: Rua das Flores, 123
          type: string
        city:
          description: City é a cidade do devedor (opcional)
          example: São Paulo
          type: string
        document:
          description: >-
            Document é o CPF (11 dígitos) ou CNPJ (14 dígitos) do devedor
            (obrigatório)
          example: '12345678901'
          type: string
        email:
          description: Email é o endereço de e-mail do devedor (opcional)
          example: joao@example.com
          type: string
        name:
          description: Name é o nome completo do devedor (obrigatório)
          example: João da Silva
          type: string
        state:
          description: State é o estado do devedor (opcional)
          example: SP
          type: string
        zipCode:
          description: ZipCode é o CEP do devedor (opcional)
          example: 01310-100
          type: string
      type: object
    ReceiverOutput:
      properties:
        address:
          description: Address é o endereço do recebedor (obrigatório)
          example: Rua das Flores, 123
          type: string
        city:
          description: City é a cidade do recebedor (obrigatório)
          example: São Paulo
          type: string
        document:
          description: Document é o CPF ou CNPJ do recebedor (obrigatório)
          example: '12345678901'
          type: string
        name:
          description: Name é o nome do recebedor (obrigatório)
          example: João da Silva
          type: string
        state:
          description: State é o estado do recebedor (obrigatório)
          example: SP
          type: string
        tradeName:
          description: >-
            TradeName é o nome fantasia do recebedor (opcional, para pessoas
            jurídicas)
          example: Company Name
          type: string
        zipCode:
          description: ZipCode é o CEP do recebedor (obrigatório)
          example: 01310-100
          type: string
      type: object
    AbatementObject:
      properties:
        modality:
          description: >-
            Modality é o tipo de abatimento. Valores aceitos: FIXED_VALUE,
            PERCENT
          example: PERCENT
          type: string
        value:
          description: Value é o valor do abatimento (montante ou percentual) como string
          example: '3.00'
          type: string
      required:
        - modality
        - value
      type: object
    DiscountObject:
      properties:
        discountDateFixed:
          description: >-
            DiscountDateFixed é um array de descontos por data fixa. Obrigatório
            quando value não é informado. Mín. 1, Máx. 3 itens.
          items:
            $ref: '#/components/schemas/DiscountDateFixed'
          maxItems: 3
          minItems: 1
          type: array
        modality:
          description: >-
            Modality é o tipo de desconto. Valores aceitos:
            FIXED_VALUE_UNTIL_THE_DATES_INFORMED, PERCENTAGE_DATE_REPORTED,
            AMOUNT_PER_CALENDAR_DAY_ADVANCE, AMOUNT_ADVANCE_BUSINESS_DAY,
            PERCENTAGE_ADVANCE_CURRENT_DAY, PERCENTAGE_ADVANCE_BUSINESS_DAY
          example: AMOUNT_ADVANCE_BUSINESS_DAY
          type: string
        value:
          description: >-
            Value é o valor do desconto (montante ou percentual) como string.
            Obrigatório quando discountDateFixed não é informado.
          example: '5.00'
          type: string
      required:
        - modality
      type: object
    FineObject:
      properties:
        modality:
          description: 'Modality é o tipo de multa. Valores aceitos: FIXED_VALUE, PERCENT'
          example: PERCENT
          type: string
        value:
          description: Value é o valor da multa (montante ou percentual) como string
          example: '2.00'
          type: string
      required:
        - modality
        - value
      type: object
    InterestObject:
      properties:
        modality:
          description: >-
            Modality é o tipo de juros. Valores aceitos: VALUE_CALENDAR_DAYS,
            PERCENTAGE_PER_DAY_CALENDAR_DAYS,
            PERCENTAGE_PER_MONTH_CALENDAR_DAYS,
            PERCENTAGE_PER_YEAR_CALENDAR_DAYS, VALUE_WORKING_DAYS,
            PERCENTAGE_PER_DAYWORKING_DAYS, PERCENTAGE_PER_MONTH_WORKING_DAYS,
            PERCENTAGE_PER_YEAR_WORKING_DAYS
          example: PERCENTAGE_PER_MONTH_CALENDAR_DAYS
          type: string
        value:
          description: Value é o valor dos juros (montante ou percentual) como string
          example: '1.00'
          type: string
      required:
        - modality
        - value
      type: object
    DiscountDateFixed:
      properties:
        date:
          description: Date é a data do desconto no formato YYYY-MM-DD
          example: '2024-12-25'
          type: string
        value:
          description: Value é o valor do desconto para esta data como string
          example: '10.00'
          type: string
      required:
        - date
        - value
      type: object
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````