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

# Get all user transactions with pagination and filters

> Retrieve paginated user transactions with various filtering options



## OpenAPI

````yaml /openapi.json get /api/v1/transactions/user
openapi: 3.0.0
info:
  title: Mr Monei API Gateway
  description: External API for partners using API Key authentication
  version: '1.0'
  contact: {}
servers:
  - url: https://api.dev.monei.cc
    description: Dev Server
  - url: https://api.monei.cc
    description: Live Server
security: []
tags: []
paths:
  /api/v1/transactions/user:
    get:
      tags:
        - Transaction
      summary: Get all user transactions with pagination and filters
      description: Retrieve paginated user transactions with various filtering options
      operationId: TransactionController_getUserTransactions
      parameters:
        - name: page
          required: false
          in: query
          description: Page number
          schema:
            default: 1
            type: number
        - name: limit
          required: false
          in: query
          description: Items per page
          schema:
            default: 10
            type: number
        - name: status
          required: false
          in: query
          description: Filter by transaction status
          schema:
            example: SUCCESS
            enum:
              - PENDING
              - SUCCESS
              - FAILED
              - COMPLETED
            type: string
        - name: type
          required: false
          in: query
          description: Filter by transaction type
          schema:
            example: CREDIT
            enum:
              - DEBIT
              - CREDIT
              - PEER-TRANSFER
            type: string
        - name: minAmount
          required: false
          in: query
          description: Filter by minimum amount
          schema:
            type: number
        - name: maxAmount
          required: false
          in: query
          description: Filter by maximum amount
          schema:
            type: number
        - name: currency
          required: false
          in: query
          description: Filter by currency
          schema:
            type: string
        - name: narration
          required: false
          in: query
          description: Filter by narration (contains text)
          schema:
            type: string
        - name: reference
          required: false
          in: query
          description: Filter by reference
          schema:
            type: string
        - name: fincraReference
          required: false
          in: query
          description: Filter by fincraReference
          schema:
            type: string
        - name: flutterwaveReference
          required: false
          in: query
          description: Filter by flutterwaveReference
          schema:
            type: string
        - name: startDate
          required: false
          in: query
          description: Start date for filtering (YYYY-MM-DD)
          schema:
            type: string
        - name: endDate
          required: false
          in: query
          description: End date for filtering (YYYY-MM-DD)
          schema:
            type: string
        - name: sortBy
          required: false
          in: query
          description: Sort field
          schema:
            default: createdAt
            enum:
              - createdAt
              - amount
              - updatedAt
            type: string
        - name: sortOrder
          required: false
          in: query
          description: 'Sort direction: asc or desc'
          schema:
            default: desc
            enum:
              - asc
              - desc
            type: string
      responses:
        '200':
          description: Transactions retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedUserTransactionsResponseDto'
        '404':
          description: No transactions found
      security:
        - api-key: []
        - bearer: []
components:
  schemas:
    PaginatedUserTransactionsResponseDto:
      type: object
      properties:
        statusCode:
          type: number
        message:
          type: string
        data:
          $ref: '#/components/schemas/PaginatedResponseDto'
        errors:
          type: object
      required:
        - statusCode
        - message
        - data
        - errors
    PaginatedResponseDto:
      type: object
      properties:
        transactions:
          type: array
          items:
            $ref: '#/components/schemas/TransactionDataDto'
        pagination:
          $ref: '#/components/schemas/PaginationMetaDto'
      required:
        - transactions
        - pagination
    TransactionDataDto:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier
        createdAt:
          format: date-time
          type: string
          description: Record creation timestamp
        updatedAt:
          format: date-time
          type: string
          description: Record last updated timestamp
        deletedDate:
          format: date-time
          type: string
          description: Record deletion timestamp
        userId:
          type: string
        amount:
          type: number
        type:
          type: string
        status:
          type: string
        reference:
          type: string
        currency:
          type: string
        narration:
          type: string
      required:
        - id
        - createdAt
        - updatedAt
        - deletedDate
        - userId
        - amount
        - type
        - status
        - reference
        - narration
    PaginationMetaDto:
      type: object
      properties:
        page:
          type: number
        limit:
          type: number
        total:
          type: number
        totalPages:
          type: number
        hasNextPage:
          type: boolean
        hasPreviousPage:
          type: boolean
      required:
        - page
        - limit
        - total
        - totalPages
        - hasNextPage
        - hasPreviousPage
  securitySchemes:
    api-key:
      type: apiKey
      in: header
      name: X-API-KEY

````