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

# Simulate Deposit Creation

> You can use this endpoint to simulate deposits into your global account. This is only available in the sandbox environment.



## OpenAPI

````yaml /global-account/v1.6/banking.yaml post /v1/simulation/deposit
openapi: 3.0.2
info:
  title: Banking API
  version: 0.0.1
  description: >
    UQPAY Banking API provides comprehensive banking and payment solutions for
    global money movement.


    ## Key Features

    - International payments and transfers

    - Multi-currency account management

    - Real-time currency conversion

    - Virtual account services

    - Fund deposit and withdrawal


    ## Authentication

    Use API keys to authenticate your client requests when utilizing UQPAY APIs.

    API keys are unique data strings used to authenticate users and enable
    access to privileged operations.

    Your API key should be kept confidential and secure at all times.


    ## Service Components

    - **Payout**: Create and manage international fund transfers to
    beneficiaries

    - **Payer**: Manage entities making payments and authorizing fund transfers

    - **Beneficiary**: Handle recipient information and bank details

    - **Balance**: View and manage multi-currency account balances

    - **Deposit**: Process incoming fund transfers

    - **Virtual Accounts**: Utilize local bank accounts in foreign currencies

    - **Conversion**: Execute currency exchange at competitive rates


    ## Getting Started

    1. Obtain API credentials

    2. Set up test environment using sandbox URL

    3. Implement authentication

    4. Start with basic operations


    ## Support

    For technical support and integration assistance, contact UQPAY support
    team.
  contact:
    name: UQPAY Support
    url: https://www.uqpay.com/support
    email: banking.tech@uqpay.com
  license:
    name: Proprietary
    url: https://www.uqpay.com/legal/api-terms
  termsOfService: https://www.uqpay.com/legal/terms
  x-api-id: banking-api-v1.6.0
  x-logo:
    url: https://uqpay.com/img/UQPAY_LogoAnimv2.gif
    backgroundColor: '#FFFFFF'
    altText: UQPAY Logo
  x-categories:
    - Banking
    - Payment Processing
    - Foreign Exchange
servers:
  - url: https://api-sandbox.uqpaytech.com/api
    description: Sandbox base URL.
  - url: https://api.uqpay.com/api
    description: Production base URL.
security: []
tags:
  - name: Balances
    description: >-
      View and manage available funds across different currencies in your
      account.
  - name: Transfers
    description: >-
      A wallet transfer resource is used for sending funds directly from your
      UQPAY account to a connected account.
  - name: Deposits
    description: >-
      Deposits are bank transfers made into your UQPAY Global Accounts for
      adding funds or collecting funds from third parties.
  - name: Virtual Accounts
    description: >-
      Virtual Accounts function as local bank accounts in foreign currencies.
      They enable worldwide fund collection with account details that allow you
      to receive funds from various platforms. Virtual Accounts can also be used
      to top up your UQPAY balance.
  - name: Payout
    description: >-
      A Payout resource is created when you send funds to a beneficiary. It
      details the beneficiary, bank details, the amount being paid, its status,
      and other relevant information. You can create the payout using either
      direct beneficiary details or a previously created beneficiary ID.
  - name: Payers
    description: >-
      The payer is the party making the payout and authorizing the transfer of
      funds from their account to the beneficiary's account.
  - name: Beneficiaries
    description: >-
      The beneficiary is the recipient of the funds and is typically the party
      who will ultimately benefit from the payout.
  - name: Conversion
    description: Manage currency conversions and exchange rates for your transactions.
  - name: Exchange Rates
    description: >-
      Retrieve real-time exchange rates for a specified currency pair or all
      available pairs.
  - name: Global Accounts
    description: >-
      ⚠️ WARNING This API version is deprecated. Eventually, a deprecated API
      version becomes unsupported. Global Accounts are foreign currency accounts
      that function as local bank accounts.
  - name: Simulator
    description: Simulate deposit transactions on the sandbox environment.
paths:
  /v1/simulation/deposit:
    post:
      tags:
        - Simulator
      summary: Simulate Deposit Creation
      description: >-
        You can use this endpoint to simulate deposits into your global account.
        This is only available in the sandbox environment.
      operationId: simulate-deposit-creation
      parameters:
        - $ref: '#/components/parameters/XOnBehalfOf'
        - $ref: '#/components/parameters/XIdempotencyKey'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SimulateCreateDepositRequest'
      responses:
        '200':
          headers:
            x-response-id:
              $ref: '#/components/headers/XResponseId'
          description: Deposit simulated successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SimulateCreateDepositResponse'
                title: SimulateDepositResponse
      security:
        - XAuthToken: []
      servers:
        - url: https://api-sandbox.uqpaytech.com/api
          description: Sandbox base URL.
components:
  parameters:
    XOnBehalfOf:
      in: header
      name: x-on-behalf-of
      schema:
        type: string
      required: false
      description: >
        Specifies the sub-account on whose behalf the request is made. This
        should be set to the `account_id`, which can be retrieved via the [List
        Connected
        Accounts](/account-center/v1.6/api-reference/list-connected-accounts-1).
        If omitted or empty, the request is executed using the master account.

        More information at [Connected
        Accounts](/account-center/v1.6/guide/connected-accounts).
      example: 18523f72-f4de-4f9c-bb8e-ec7d1c4f32be
    XIdempotencyKey:
      in: header
      name: x-idempotency-key
      schema:
        type: string
        format: uuid
      required: true
      description: >-
        A unique identifier (UUID) used to maintain operation idempotency,
        ensuring that repeated executions of the same operation do not result in
        unintended effects or duplication. It helps preserve data consistency in
        the face of network errors, retries, or failures.
      example: 2adesf8e-9d63-44bc-b975-9b6ae3440dde
  schemas:
    SimulateCreateDepositRequest:
      type: object
      required:
        - amount
        - currency
        - sender_swift_code
      properties:
        amount:
          type: number
          example: 1000
          description: The amount to deposit.
        currency:
          $ref: '#/components/schemas/Currency'
        receiver_account_number:
          type: string
          example: SG123456789012345678
          description: The receiver's account number.
        sender_swift_code:
          $ref: '#/components/schemas/SwiftCode'
        sender_account_number:
          type: string
          example: GB41TCCL12345634178496
          description: The sender's account number.
        sender_country: a996be61-4e2f-4b1a-a7f6-26f86c976662
        sender_name:
          $ref: '#/components/schemas/Name'
    SimulateCreateDepositResponse:
      type: object
      required:
        - deposit_id
        - short_reference_id
        - amount
        - currency
        - deposit_status
        - complete_time
        - receiver_account_number
        - sender
      properties:
        deposit_id:
          type: string
          description: The deposit id.
          example: 72970a7c-7921-431c-b95f-3438724ba16f
        short_reference_id:
          $ref: '#/components/schemas/ShortReferenceId'
        amount:
          type: string
          description: The amount of the deposit.
          example: '10000'
        currency:
          $ref: '#/components/schemas/Currency'
        deposit_status:
          type: string
          enum:
            - PENDING
            - COMPLETED
            - FAILED
          description: The status of the deposit.
          example: PENDING
        create_time:
          type: string
          description: Create time at which the object was created.
          example: '2024-03-21T17:17:32+08:00'
        complete_time:
          type: string
          description: Completed time at which the object was created.
          example: '2024-03-21T17:17:32+08:00'
        receiver_account_number:
          $ref: '#/components/schemas/AccountNumber'
        sender:
          type: object
          description: Details of the sender who initiated the deposit.
          properties:
            sender_name:
              $ref: '#/components/schemas/Name'
            sender_country: d12f400e-91bb-46b8-a1fd-86098eba5a57
            sender_account_number:
              $ref: '#/components/schemas/AccountNumber'
            sender_swift_code:
              $ref: '#/components/schemas/SwiftCode'
    Currency:
      type: string
      example: USD
      description: >-
        Currency in which money is held in the beneficiary's bank account.
        Three-letter [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) currency
        code.
      maxLength: 3
      minLength: 3
    SwiftCode:
      type: string
      example: WELGBE22
      description: Swift code of the beneficiary's bank account.
      maxLength: 30
    Name:
      type: string
      example: UQPAY SG
      description: The customer-facing business name.
    ShortReferenceId:
      type: string
      example: P220406-LLCVLRM
      description: The reference generated by the system to identify the entity.
    AccountNumber:
      type: string
      example: '12345678'
      description: >
        Account number, mostly for non-european countries, either account_number
        or iban should be filled.


        Only English letters (uppercase and lowercase) and digits are allowed;
        dashes or other special characters are not permitted.
      pattern: ^[a-zA-Z0-9]*$
      maxLength: 60
  headers:
    XResponseId:
      description: >-
        Universally unique identifier (UUID v4) for the response. Helpful for
        identifying a request when communicating with UQPAY support.
      schema:
        type: string
        format: uuid
        example: 2adba88e-9d63-44bc-b975-9b6ae3440dde
  securitySchemes:
    XAuthToken:
      type: apiKey
      in: header
      name: x-auth-token
      description: The API token for login provided by UQPay.

````