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

# Listar clientes

> Liste e filtre seus clientes

Retorna uma lista paginada de clientes com opções de filtragem.


## OpenAPI

````yaml api-reference/openapi.json GET /v1/customers
openapi: 3.1.1
info:
  title: Safefy - Pix Gateway
  description: >

    ## Introducao


    **Seu parceiro financeiro de confianca.**


    Nos somos a Safefy, uma plataforma especializada em solucoes de pagamento
    PIX. Com um servico personalizado e focado nas suas necessidades, estamos
    prontos para apoiar sua empresa em cada etapa do processo.


    - Conte com o **PIX** como metodo de pagamento rapido, seguro e alinhado com
    as melhores praticas de conformidade e prevencao a fraudes.

    - Gerencie suas financas de forma simples e acessivel por meio de uma
    interface completa e intuitiva.

    - Nosso time de suporte esta sempre disponivel para oferecer um atendimento
    exclusivo e eficiente.


    ## Precisa de Ajuda?


    A equipe da Safefy quer garantir que sua integracao seja um sucesso. Se
    tiver duvidas ou precisar de suporte, nao hesite em nos contatar:


    **suporte@safefypay.com.br**


    ---


    ## Valores Monetarios


    Todos os valores monetarios sao representados em **centavos** (menor unidade
    da moeda).


    | Valor Real | Valor na API |

    |------------|--------------|

    | R$ 1,00    | 100          |

    | R$ 10,50   | 1050         |

    | R$ 100,00  | 10000        |
  contact:
    name: Suporte Safefy
    email: suporte@safefypay.com.br
  version: v1
servers:
  - url: https://api-payment.safefypay.com.br
    description: API de Pagamentos Safefy
security:
  - bearerAuth: []
tags:
  - name: Autenticacao
    description: Endpoints de autenticacao OAuth2
  - name: Transacoes
    description: Gerenciamento de transacoes PIX
  - name: Clientes
    description: Gerenciamento de clientes
  - name: Saldo
    description: Consulta de saldo e volumes
  - name: Saques
    description: Solicitacao e gerenciamento de saques
  - name: Disputas
    description: Consulta de disputas e envio de defesa
paths:
  /v1/customers:
    get:
      tags:
        - Clientes
      summary: Listar clientes
      description: Retorna uma lista paginada de clientes com suporte a filtros.
      operationId: listCustomers
      parameters:
        - name: page
          in: query
          description: Numero da pagina
          schema:
            type: integer
            default: 1
            example: 1
        - name: pageSize
          in: query
          description: 'Itens por pagina (max: 100)'
          schema:
            type: integer
            default: 20
            example: 20
        - name: status
          in: query
          description: Filtrar por status
          schema:
            type: string
            enum:
              - Active
              - Inactive
            example: Active
        - name: documentType
          in: query
          description: Filtrar por tipo de documento
          schema:
            type: string
            enum:
              - CPF
              - CNPJ
            example: CPF
        - name: search
          in: query
          description: Buscar por nome, email ou documento
          schema:
            type: string
            example: joao
        - name: externalId
          in: query
          description: Filtrar por ID externo
          schema:
            type: string
            example: cliente_123
      responses:
        '200':
          description: Lista de clientes
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListCustomersResponse'
              example:
                data:
                  items:
                    - id: 550e8400-e29b-41d4-a716-446655440000
                      externalId: cliente_123
                      name: Joao Silva
                      email: joao@email.com
                      document: 123.456.789-00
                      documentType: CPF
                      phone: '5511999998888'
                      status: Active
                      metadata: null
                      address: null
                      createdAt: '2025-01-15T15:00:00Z'
                  page: 1
                  pageSize: 20
                  totalItems: 1
                  totalPages: 1
                  hasNextPage: false
                  hasPreviousPage: false
                message: null
                error: null
        '401':
          description: Nao autorizado
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BaseResponse'
              example:
                data: null
                message: null
                error:
                  message: Token invalido ou expirado.
                  code: unauthorized
components:
  schemas:
    ListCustomersResponse:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/PaginatedCustomers'
        message:
          type: string
          nullable: true
        error:
          $ref: '#/components/schemas/ApiErrorResponse'
    BaseResponse:
      type: object
      properties:
        data:
          nullable: true
        message:
          type: string
          nullable: true
        error:
          $ref: '#/components/schemas/ApiErrorResponse'
    PaginatedCustomers:
      type: object
      nullable: true
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/CustomerData'
        page:
          type: integer
          example: 1
        pageSize:
          type: integer
          example: 20
        totalItems:
          type: integer
          example: 50
        totalPages:
          type: integer
          example: 3
        hasNextPage:
          type: boolean
          example: true
        hasPreviousPage:
          type: boolean
          example: false
    ApiErrorResponse:
      type: object
      nullable: true
      properties:
        message:
          type: string
          description: Mensagem de erro
          example: Token invalido ou expirado.
        code:
          type: string
          description: Codigo do erro
          example: unauthorized
    CustomerData:
      type: object
      nullable: true
      properties:
        id:
          type: string
          format: uuid
          description: ID unico do cliente
          example: 550e8400-e29b-41d4-a716-446655440000
        externalId:
          type: string
          nullable: true
          description: ID externo informado
          example: cliente_123
        name:
          type: string
          description: Nome do cliente
          example: Joao Silva
        email:
          type: string
          description: E-mail do cliente
          example: joao@email.com
        document:
          type: string
          nullable: true
          description: CPF/CNPJ formatado
          example: 123.456.789-00
        documentType:
          type: string
          enum:
            - CPF
            - CNPJ
          nullable: true
          description: Tipo do documento
          example: CPF
        phone:
          type: string
          nullable: true
          description: Telefone com codigo do pais, salvo apenas com digitos
          example: '5511999998888'
        status:
          type: string
          enum:
            - Active
            - Inactive
          description: Status do cliente
          example: Active
        metadata:
          type: string
          nullable: true
          description: Metadados
          example: null
        address:
          $ref: '#/components/schemas/CustomerAddress'
        createdAt:
          type: string
          format: date-time
          description: Data de criacao
          example: '2025-01-15T15:00:00Z'
    CustomerAddress:
      type: object
      nullable: true
      properties:
        street:
          type: string
          nullable: true
          example: Rua das Flores
        number:
          type: string
          nullable: true
          example: '123'
        complement:
          type: string
          nullable: true
          example: Apto 45
        neighborhood:
          type: string
          nullable: true
          example: Centro
        city:
          type: string
          nullable: true
          example: Sao Paulo
        state:
          type: string
          nullable: true
          example: SP
        postalCode:
          type: string
          nullable: true
          example: 01234-567
        country:
          type: string
          nullable: true
          example: BR
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Token JWT obtido via /v1/auth/token

````