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

# Credit a sandbox account

> Credits an issued sandbox wallet account with test funds. No real funds move.



## OpenAPI

````yaml /openapi.json post /v3/sandbox/accounts/{accountId}/topup
openapi: 3.1.0
info:
  title: Swipelux API
  version: 3.1.0
servers:
  - url: https://platform.swipelux.com
    description: Production and sandbox; environment selected by API key
security:
  - apiKey: []
tags:
  - name: customers
    x-displayName: Customers
    description: >-
      Create, list, update, export, and archive individual and business
      customers and their related parties.
  - name: capabilities
    x-displayName: Capabilities
    description: >-
      Discover, request, inspect, and cancel customer capabilities and their
      institution applications.
  - name: accounts
    x-displayName: Accounts
    description: Create, inspect, update, and archive customer accounts.
  - name: recipients
    x-displayName: Recipients
    description: Create third-party recipients and their payout destinations.
  - name: Tasks
    x-displayName: Tasks
    description: Inspect customer, capability, application, account, and transfer tasks.
  - name: Task submissions
    x-displayName: Task submissions
    description: Submit and inspect immutable answers to customer tasks.
  - name: documents
    x-displayName: Documents
    description: Upload and inspect customer documents used in task submissions.
  - name: money-movement
    x-displayName: Money movement
    description: Create quotes, execute quote-backed transfers, and inspect transfer state.
  - name: rules
    x-displayName: Rules
    description: >-
      Standing instructions that act on incoming funds. A rule watches a
      custodial wallet account (`trigger`) and, when funds become available on
      it, transfers them to a target (`action`) — most commonly a sweep to a
      non-custodial wallet destination.


      Rules match at the account credit, not at the deposit rail: fiat deposits
      settle into the issued bank account's settlement wallet account, so a rule
      on that wallet account catches ACH/SEPA/SWIFT deposits, stablecoin
      deposits, and internal transfers alike.


      The action target reuses the money-movement vocabulary (`account` for the
      customer's own accounts, `destination` for recipient destinations). At
      most one non-archived rule may watch a given trigger account. Statuses:
      `active ⇄ paused → archived` — pause and resume through PATCH, archive
      (terminal) through DELETE.
  - name: sandbox
    x-displayName: Sandbox
    description: Simulate supported account, task, capability, and transfer outcomes.
  - name: institutions
    x-displayName: Institutions
    description: List institutions referenced by capabilities and applications.
  - name: webhooks
    x-displayName: Webhooks
    description: Configure webhook endpoints and inspect delivery activity.
externalDocs:
  description: Swipelux Documentation
  url: https://docs.swipelux.com
paths:
  /v3/sandbox/accounts/{accountId}/topup:
    post:
      tags:
        - sandbox
      summary: Credit a sandbox account
      description: >-
        Credits an issued sandbox wallet account with test funds. No real funds
        move.
      operationId: postV3SandboxAccountsByAccountIdTopup
      parameters:
        - schema:
            type: string
          in: path
          name: accountId
          required: true
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                amount:
                  type: string
                  pattern: ^[+-]?(?:\d*\.)?\d+$
                  description: Amount of currency to credit. Decimal string.
                currency:
                  type: string
                  minLength: 2
                  description: Crypto currency symbol, for example USDC.
              required:
                - amount
                - currency
      responses:
        '200':
          description: Sandbox top-up completed
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      id:
                        type: string
                      type:
                        enum:
                          - wallet_to_wallet
                      state:
                        description: >-
                          Sandbox top-up state. Closed enum — exhaustive;
                          additions would be a breaking change.
                        enum:
                          - completed
                      from:
                        type: object
                        properties:
                          rail:
                            type: string
                          identifier:
                            type: string
                          amount:
                            type: string
                          currency:
                            type: string
                        required:
                          - rail
                          - identifier
                          - amount
                          - currency
                      to:
                        type: object
                        properties:
                          identifier:
                            type: string
                        required:
                          - identifier
                      url:
                        type: string
                      onchainUrl:
                        type: string
                    required:
                      - id
                      - type
                      - state
                      - from
                      - to
                      - url
                      - onchainUrl
                required:
                  - data
        '400':
          description: Validation, currency, or non-sandbox-customer rejection
          content:
            application/problem+json:
              schema:
                type: object
                additionalProperties: false
                required:
                  - type
                  - title
                  - status
                  - code
                  - detail
                  - correlationId
                properties:
                  type:
                    type: string
                    format: uri
                    enum:
                      - https://docs.swipelux.com/errors/validation-error
                    description: Documentation URL for this stable problem code.
                  title:
                    type: string
                    description: Short human-readable problem title.
                  status:
                    type: integer
                    enum:
                      - 400
                    description: HTTP status code.
                  code:
                    type: string
                    enum:
                      - validation_error
                    description: Stable snake_case error code.
                  detail:
                    type: string
                    description: Actionable problem detail for legitimate callers.
                  correlationId:
                    type: string
                    description: Request correlation id. Mirrors `X-Request-Id`.
                  errors:
                    type: array
                    description: Field-level validation errors.
                    items:
                      type: object
                      additionalProperties: false
                      required:
                        - pointer
                        - code
                        - message
                      properties:
                        pointer:
                          type: string
                          description: JSON Pointer into the request body.
                        code:
                          type: string
                          description: Machine-readable field error code.
                        message:
                          type: string
                          description: Human-readable field error message.
        '401':
          description: Authentication required.
          content:
            application/problem+json:
              schema:
                type: object
                additionalProperties: false
                required:
                  - type
                  - title
                  - status
                  - code
                  - detail
                  - correlationId
                  - retryable
                properties:
                  type:
                    type: string
                    format: uri
                    enum:
                      - https://docs.swipelux.com/errors/unauthorized
                    description: Documentation URL for this stable problem code.
                  title:
                    type: string
                    description: Short human-readable problem title.
                  status:
                    type: integer
                    enum:
                      - 401
                    description: HTTP status code.
                  code:
                    type: string
                    enum:
                      - unauthorized
                    description: Stable snake_case error code.
                  detail:
                    type: string
                    description: Actionable problem detail for legitimate callers.
                  correlationId:
                    type: string
                    description: Request correlation id. Mirrors `X-Request-Id`.
                  errors:
                    type: array
                    description: Field-level validation errors.
                    items:
                      type: object
                      additionalProperties: false
                      required:
                        - pointer
                        - code
                        - message
                      properties:
                        pointer:
                          type: string
                          description: JSON Pointer into the request body.
                        code:
                          type: string
                          description: Machine-readable field error code.
                        message:
                          type: string
                          description: Human-readable field error message.
                  retryable:
                    type: boolean
                    enum:
                      - false
                    description: Whether retrying the same request may succeed.
        '403':
          description: Live API key — sandbox-only endpoint
          content:
            application/problem+json:
              schema:
                type: object
                additionalProperties: false
                required:
                  - type
                  - title
                  - status
                  - code
                  - detail
                  - correlationId
                  - retryable
                properties:
                  type:
                    type: string
                    format: uri
                    enum:
                      - https://docs.swipelux.com/errors/forbidden
                    description: Documentation URL for this stable problem code.
                  title:
                    type: string
                    description: Short human-readable problem title.
                  status:
                    type: integer
                    enum:
                      - 403
                    description: HTTP status code.
                  code:
                    type: string
                    enum:
                      - forbidden
                    description: Stable snake_case error code.
                  detail:
                    type: string
                    description: Actionable problem detail for legitimate callers.
                  correlationId:
                    type: string
                    description: Request correlation id. Mirrors `X-Request-Id`.
                  errors:
                    type: array
                    description: Field-level validation errors.
                    items:
                      type: object
                      additionalProperties: false
                      required:
                        - pointer
                        - code
                        - message
                      properties:
                        pointer:
                          type: string
                          description: JSON Pointer into the request body.
                        code:
                          type: string
                          description: Machine-readable field error code.
                        message:
                          type: string
                          description: Human-readable field error message.
                  retryable:
                    type: boolean
                    enum:
                      - false
                    description: Whether retrying the same request may succeed.
        '404':
          description: Target account not found for this merchant
          content:
            application/problem+json:
              schema:
                type: object
                additionalProperties: false
                required:
                  - type
                  - title
                  - status
                  - code
                  - detail
                  - correlationId
                properties:
                  type:
                    type: string
                    format: uri
                    enum:
                      - https://docs.swipelux.com/errors/not-found
                    description: Documentation URL for this stable problem code.
                  title:
                    type: string
                    description: Short human-readable problem title.
                  status:
                    type: integer
                    enum:
                      - 404
                    description: HTTP status code.
                  code:
                    type: string
                    enum:
                      - not_found
                    description: Stable snake_case error code.
                  detail:
                    type: string
                    description: Actionable problem detail for legitimate callers.
                  correlationId:
                    type: string
                    description: Request correlation id. Mirrors `X-Request-Id`.
                  errors:
                    type: array
                    description: Field-level validation errors.
                    items:
                      type: object
                      additionalProperties: false
                      required:
                        - pointer
                        - code
                        - message
                      properties:
                        pointer:
                          type: string
                          description: JSON Pointer into the request body.
                        code:
                          type: string
                          description: Machine-readable field error code.
                        message:
                          type: string
                          description: Human-readable field error message.
        '409':
          description: Target account is archived
          content:
            application/problem+json:
              schema:
                type: object
                additionalProperties: false
                required:
                  - type
                  - title
                  - status
                  - code
                  - detail
                  - correlationId
                  - retryable
                properties:
                  type:
                    type: string
                    format: uri
                    enum:
                      - https://docs.swipelux.com/errors/conflict
                    description: Documentation URL for this stable problem code.
                  title:
                    type: string
                    description: Short human-readable problem title.
                  status:
                    type: integer
                    enum:
                      - 409
                    description: HTTP status code.
                  code:
                    type: string
                    enum:
                      - conflict
                    description: Stable snake_case error code.
                  detail:
                    type: string
                    description: Actionable problem detail for legitimate callers.
                  correlationId:
                    type: string
                    description: Request correlation id. Mirrors `X-Request-Id`.
                  errors:
                    type: array
                    description: Field-level validation errors.
                    items:
                      type: object
                      additionalProperties: false
                      required:
                        - pointer
                        - code
                        - message
                      properties:
                        pointer:
                          type: string
                          description: JSON Pointer into the request body.
                        code:
                          type: string
                          description: Machine-readable field error code.
                        message:
                          type: string
                          description: Human-readable field error message.
                  retryable:
                    type: boolean
                    enum:
                      - false
                    description: Whether retrying the same request may succeed.
        '500':
          description: Internal server error.
          content:
            application/problem+json:
              schema:
                type: object
                additionalProperties: false
                required:
                  - type
                  - title
                  - status
                  - code
                  - detail
                  - correlationId
                  - retryable
                properties:
                  type:
                    type: string
                    format: uri
                    enum:
                      - https://docs.swipelux.com/errors/internal-error
                    description: Documentation URL for this stable problem code.
                  title:
                    type: string
                    description: Short human-readable problem title.
                  status:
                    type: integer
                    enum:
                      - 500
                    description: HTTP status code.
                  code:
                    type: string
                    enum:
                      - internal_error
                    description: Stable snake_case error code.
                  detail:
                    type: string
                    description: Actionable problem detail for legitimate callers.
                  correlationId:
                    type: string
                    description: Request correlation id. Mirrors `X-Request-Id`.
                  errors:
                    type: array
                    description: Field-level validation errors.
                    items:
                      type: object
                      additionalProperties: false
                      required:
                        - pointer
                        - code
                        - message
                      properties:
                        pointer:
                          type: string
                          description: JSON Pointer into the request body.
                        code:
                          type: string
                          description: Machine-readable field error code.
                        message:
                          type: string
                          description: Human-readable field error message.
                  retryable:
                    type: boolean
                    enum:
                      - true
                    description: Whether retrying the same request may succeed.
components:
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: X-API-Key

````

## Related topics

- [Sandbox testing](/integration/sandbox.md)
- [Force sandbox transfer state](/api-reference/sandbox/post-v3-sandbox-transfers-by-transfer-id-state.md)
- [Quickstart](/integration/quickstart.md)
- [Errors and retries](/integration/errors.md)
- [Migrate a v1 or v2 integration to Swipelux API v3](/api-reference/versioning/migrate-to-v3.md)
