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

# Calculate fees for specific card creation

> Calculate fees for creating a virtual card based on card grade, type, and initial balance. Returns total fees including both Soleaspay and GetMiPay fees.



## OpenAPI

````yaml GET /virtual-cards/calculate-fees
openapi: 3.1.0
info:
  title: GetMiPay API
  description: >-
    GetMiPay - Your universal gateway to getmipay. API for processing payments,
    payouts, and virtual cards through GetMiPay gateway.
  contact:
    name: GetMiPay Support
    email: support@getmipay.com
  license:
    name: Proprietary
    url: https://getmipay.com/
  version: 1.1.0
servers:
  - url: https://sandbox.getmipay.com/api
    description: Sandbox server
security:
  - bearerAuth: []
tags:
  - name: Authentication
    description: API authentication and token management
  - name: Services
    description: Get available payment services
  - name: Currency
    description: API for converting amounts between different currencies.
  - name: Payments
    description: Collect payments from customers
  - name: Payouts
    description: Send money to customers
  - name: Transactions
    description: Check transaction status
  - name: Balance
    description: Account balance management
  - name: Virtual Cards
    description: Virtual card creation and management
  - name: Webhooks
    description: Webhook endpoints for payment notifications
paths:
  /virtual-cards/calculate-fees:
    get:
      tags:
        - Virtual Cards
      summary: Calculate Card Creation Fees
      description: >-
        Calculate fees for creating a virtual card based on card grade, type,
        and initial balance. Returns total fees including both Soleaspay and
        GetMiPay fees.
      parameters:
        - name: card_grade
          in: query
          required: true
          schema:
            type: string
            enum:
              - BASIC
              - PREMIUM
            example: BASIC
          description: Grade of the card (BASIC or PREMIUM)
        - name: card_type
          in: query
          required: true
          schema:
            type: string
            enum:
              - VISA
              - MASTERCARD
            example: VISA
          description: Type of the card (VISA or MASTERCARD)
        - name: initial_balance
          in: query
          required: true
          schema:
            type: number
            format: float
            minimum: 1
            example: 100
          description: Initial balance to load on the card
      responses:
        '200':
          description: Fees calculated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CalculateFeesResponse'
        '400':
          description: Bad request - invalid parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Unauthorized - Missing, invalid, or expired bearer token
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Fee configuration not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '422':
          description: Validation error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
      security:
        - bearerAuth: []
components:
  schemas:
    CalculateFeesResponse:
      type: object
      properties:
        success:
          type: boolean
          example: true
        data:
          type: object
          properties:
            card_grade:
              type: string
              example: BASIC
            card_type:
              type: string
              example: VISA
            currency:
              type: string
              example: USD
            initial_balance:
              type: number
              format: float
              example: 100
            creation_fee:
              type: number
              format: float
              example: 3.5
              description: Total fee for creating the card
            total_amount_required:
              type: number
              format: float
              example: 103.5
              description: Initial balance + creation fee
            other_fees:
              type: object
              properties:
                monthly_fee:
                  type: number
                  format: float
                  example: 1.3
                top_up_fee:
                  type: number
                  format: float
                  example: 1.2
                withdrawal_fee:
                  type: number
                  format: float
                  example: 3.3
                reject_balance_fee:
                  type: number
                  format: float
                  example: 1.1
            funding_limits:
              type: object
              properties:
                min:
                  type: number
                  format: float
                  example: 2
                max:
                  type: number
                  format: float
                  example: 10000
                currency:
                  type: string
                  example: USD
            message:
              type: string
              example: Fees operation calculated successfully
    Error:
      type: object
      properties:
        success:
          type: boolean
          example: false
        message:
          type: string
          example: Invalid KEY
        error_code:
          type: string
          example: INVALID_PUBLIC_KEY
    ValidationError:
      type: object
      properties:
        success:
          type: boolean
          example: false
        message:
          type: string
          example: Validation failed
        errors:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        JWT bearer token returned by POST /action/auth. Send protected requests
        with: Authorization: Bearer <jwt>. Tokens expire after 24 hours.

````