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

# Create Dynamic Account

> Dynamic accounts don't act as independent money storage - they simply channel incoming payments straight to your account. These accounts cannot process outgoing payments or be linked to payment terminals. Since virtual accounts do not serve as containers for funds, there's no need for BVN verification during setup.

## Adding Test Funds

<Info>
  On test mode with your test keys, you can easily add fake funds to the jollof bank account number created for you using our [Funds Simulator App](https://jollofbank.hyperrails.io/)

  See the full guide on [Funding in test mode](/documentation/testing/funding-in-test-mode).
</Info>


## OpenAPI

````yaml POST /accounts
openapi: 3.1.0
info:
  title: HyperRail
  description: HyperRail documentation
  license:
    name: MIT
  version: 1.0.0
servers:
  - description: Live server
    url: https://api.hyperrails.io/api/v1
security:
  - bearerAuth: []
paths:
  /accounts:
    post:
      description: This endpoint is used to create a dynamic account to receive payments.
      operationId: DynamicAccountCreation
      parameters:
        - name: x-service-source
          in: header
          required: true
          description: Identifies the calling service
          schema:
            type: string
            default: HyperRails
            example: HyperRails
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                currency:
                  type: string
                  example: NGN
                  description: >-
                    According, to our currently supported currencies, this is in
                    NGN and GHS.
                accountName:
                  type: string
                  example: Quantum Technologies
                  description: Your desired naming for your account.
                amount:
                  type: number
                  format: int32
                  description: >-
                    Amount should be in the subunit of our supported currency
                    i.e NGN and GHS for now.
                expiresIn:
                  type: number
                  format: int32
                  description: >-
                    This is optional to add. By default, the time it takes for a
                    virtual account to expire is 30 mins. However, you can
                    customize the time to lesser as you desire.
      responses:
        '200':
          description: A JSON array of dynamic account objects.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DynamicDetailsResponse'
        '400':
          description: Not Found - No subscriptions found for the given plan ID.
          content:
            application/json:
              schema:
                $ref: 75f957a6-f72b-40c2-b915-a993e62a9238
        '401':
          description: Unauthorized - Invalid or missing authentication token.
          content:
            application/json:
              schema:
                $ref: 5b1d75b6-95ef-44cf-8885-06c2b9f9fdec
components:
  schemas:
    DynamicDetailsResponse:
      type: object
      properties:
        id:
          type: string
          format: uuid
          example: c1fba25a-a36b-479c-b17d-64dbaf3ba32c
        accountNumber:
          type: string
          example: '7706438396'
        accountName:
          type: string
          example: Quantum Technologies
        bankName:
          type: string
          example: Testbank MFB
        mode:
          type: string
          enum:
            - live
            - test
          example: live
        lifeCycle:
          type: string
          example: temporary
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: API key authentication using Bearer token

````