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

# Listar Checkouts

> Retorna todos os Checkouts que você criou.

Você pode usar essa rota para listar todos seus Checkouts e visualizar seus status, valores e informações relacionadas.


Retorna todos os checkouts da sua loja em ordem cronológica decrescente.

<Card horizontal>
  Requer a permissão `CHECKOUT:READ`.
</Card>

Use os parâmetros de paginação `limit`, `after` e `before` para navegar pelos resultados. Cada item da lista segue o mesmo formato da resposta do [Criar Checkout](/pages/payment/create).

<Tip title="Filtrando por status" horizontal>
  Combine com `status` para buscar só cobranças pendentes, pagas ou canceladas.
</Tip>


## OpenAPI

````yaml GET /checkouts/list
openapi: 3.1.0
info:
  title: API AbacatePay
  description: API para gerenciamento de cobranças e pagamentos usando o AbacatePay.
  version: 1.0.0
servers:
  - url: https://api.abacatepay.com/v2
    description: Único servidor para os ambientes de produção e sandbox.
security: []
paths:
  /checkouts/list:
    get:
      summary: Listar Checkouts
      description: >
        Retorna todos os Checkouts que você criou.


        Você pode usar essa rota para listar todos seus Checkouts e visualizar
        seus status, valores e informações relacionadas.
      parameters:
        - name: after
          in: query
          description: Cursor para buscar itens após este ponto
          required: false
          schema:
            type: string
        - name: before
          in: query
          description: Cursor para buscar itens antes deste ponto
          required: false
          schema:
            type: string
        - name: limit
          in: query
          description: Quantidade de itens por página (1-100)
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
            default: 100
            example: 100
        - name: id
          in: query
          description: Filtrar por identificador único do Checkout
          required: false
          schema:
            type: string
            example: bill_abc123xyz
        - name: externalId
          in: query
          description: Filtrar por identificador do Checkout no seu sistema
          required: false
          schema:
            type: string
            example: pedido-123
        - name: status
          in: query
          description: Filtrar por status do Checkout
          required: false
          schema:
            type: string
            enum:
              - PENDING
              - EXPIRED
              - CANCELLED
              - PAID
              - REFUNDED
        - name: email
          in: query
          description: Filtrar por e-mail do cliente associado
          required: false
          schema:
            type: string
            example: daniel_lima@abacatepay.com
        - name: taxId
          in: query
          description: Filtrar por CPF ou CNPJ do cliente associado
          required: false
          schema:
            type: string
            example: 123.456.789-01
      responses:
        '200':
          description: Checkouts listados com sucesso.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    description: Lista de Checkouts.
                    items:
                      $ref: '#/components/schemas/Billing'
                  success:
                    $ref: '#/components/schemas/Success'
                  error:
                    type: string
                    nullable: true
                    example: null
                  pagination:
                    $ref: '#/components/schemas/PaginationCursor'
        '401':
          description: Falha na autenticação.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    example: Token de autenticação inválido ou ausente.
      security:
        - bearerAuth: []
components:
  schemas:
    Billing:
      type: object
      properties:
        id:
          type: string
          description: Identificador único do Checkout.
          example: bill_abc123xyz
        externalId:
          type: string
          nullable: true
          description: ID do Checkout no seu sistema.
          example: pedido-123
        url:
          type: string
          format: uri
          description: URL onde o usuário pode concluir o pagamento.
          example: https://app.abacatepay.com/pay/bill_abc123xyz
        amount:
          type: number
          description: Valor total a ser pago em centavos.
          example: 10000
        paidAmount:
          type: number
          nullable: true
          description: Valor já pago em centavos. Null se ainda não foi pago.
          example: null
        items:
          type: array
          description: Lista de itens no Checkout.
          items:
            type: object
            properties:
              id:
                type: string
                description: ID do produto.
                example: prod_456
              quantity:
                type: integer
                description: Quantidade do item.
                example: 2
        status:
          type: string
          description: Status atual do Checkout.
          enum:
            - PENDING
            - EXPIRED
            - CANCELLED
            - PAID
            - REFUNDED
          example: PENDING
        coupons:
          type: array
          description: Lista de cupons aplicados no Checkout.
          items:
            type: string
          example: []
        devMode:
          type: boolean
          description: Indica se a cobrança foi criada em ambiente de testes.
          example: false
        customerId:
          type: string
          nullable: true
          description: ID do cliente associado ao Checkout.
          example: null
        returnUrl:
          type: string
          format: uri
          nullable: true
          description: URL para onde o cliente será redirecionado ao clicar em "Voltar".
          example: null
        completionUrl:
          type: string
          format: uri
          nullable: true
          description: URL para onde o cliente será redirecionado após o pagamento.
          example: null
        receiptUrl:
          type: string
          format: uri
          nullable: true
          description: URL do comprovante de pagamento.
          example: null
        upSellProductId:
          type: string
          nullable: true
          description: >-
            ID do produto de upsell vinculado ao Checkout. Null se nenhum
            produto de upsell foi informado na criação.
          example: prod_bump456xyz
        installmentsCount:
          type: integer
          nullable: true
          description: >-
            Número de parcelas do pagamento quando realizado via Cartão de
            crédito com mais de uma parcela. `null` para pagamentos à vista ou
            realizados por outros métodos (PIX, Boleto).
          example: 3
        interest:
          nullable: true
          description: >-
            Juros por atraso configurados para o boleto. `null` quando não foi
            configurado ou quando o método de pagamento não é BOLETO.
          allOf:
            - $ref: '#/components/schemas/BoletoInterest'
        fine:
          nullable: true
          description: >-
            Multa por atraso configurada para o boleto. `null` quando não foi
            configurada ou quando o método de pagamento não é BOLETO.
          allOf:
            - $ref: '#/components/schemas/BoletoFine'
        metadata:
          type: object
          description: Metadados adicionais do Checkout.
          additionalProperties: true
          example: {}
        createdAt:
          type: string
          format: date-time
          description: Data e hora de criação do Checkout.
          example: '2024-11-04T18:38:28.573Z'
        updatedAt:
          type: string
          format: date-time
          description: Data e hora da última atualização do Checkout.
          example: '2024-11-04T18:38:28.573Z'
    Success:
      type: boolean
      description: Se a requisição obteve sucesso ou não.
      example: true
    PaginationCursor:
      type: object
      description: Informações de paginação baseada em cursor.
      required:
        - hasMore
        - next
        - before
      additionalProperties: false
      properties:
        hasMore:
          type: boolean
          description: Indica se existe mais itens para carregar.
        next:
          type: string
          nullable: true
          description: Cursor para próxima página (usar em after).
        before:
          type: string
          nullable: true
          description: Cursor para página anterior (usar em before).
    BoletoInterest:
      type: object
      description: >-
        Juros por atraso aplicados ao boleto após o vencimento. Late interest
        applied to the boleto after the due date. Aplica-se apenas a `method:
        "BOLETO"`; ignorado nos demais métodos.
      additionalProperties: false
      required:
        - value
      properties:
        value:
          type: integer
          minimum: 0
          description: >-
            Percentual de juros ao mês em centésimos de percentual (`100` = 1%
            ao mês, `250` = 2,5% ao mês). Quando `0` ou omitido, sem juros.
            Calculado pro rata die após o vencimento.

            EN: Monthly late-interest rate in hundredths of a percent (`100` =
            1%/month). Accrues pro rata die after the due date; `0` or omitted
            disables interest.
          example: 100
    BoletoFine:
      type: object
      description: >-
        Multa por atraso aplicada uma única vez após o vencimento do boleto.
        One-time late fine applied after the due date. Aplica-se apenas a
        `method: "BOLETO"`; ignorado nos demais métodos.
      additionalProperties: false
      required:
        - value
        - type
      properties:
        value:
          type: integer
          minimum: 0
          description: >-
            Quando `type = "PERCENTAGE"`: centésimos de percentual sobre o valor
            do boleto (`200` = 2%). Quando `type = "FIXED"`: valor fixo em
            centavos (`1000` = R$ 10,00). Quando `0` ou omitido, sem multa.

            EN: With `type: "PERCENTAGE"`, value is in hundredths of a percent
            (`200` = 2%). With `type: "FIXED"`, value is in cents (`1000` = R$
            10.00). `0` or omitted disables the fine.
          example: 200
        type:
          type: string
          description: >-
            Tipo da multa. `PERCENTAGE` aplica percentual sobre o valor do
            boleto; `FIXED` aplica um valor fixo em centavos.

            EN: Fine type. `PERCENTAGE` applies a percent of the boleto amount;
            `FIXED` applies a fixed amount in cents.
          enum:
            - PERCENTAGE
            - FIXED
          example: PERCENTAGE
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >
        Todas as requisições devem incluir sua chave de API no header
        Authorization usando o formato `Bearer <abacatepay-api-key>`. Sem esse
        header a requisição será rejeitada.


        Saiba mais sobre como criar e usar chaves de API na [documentação de
        autenticação](/pages/authentication).

````