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

# Simulate inbound transfer on a Deposit Address

> Simulate an inbound stablecoin (blockchain) transfer against a Deposit
Address, for testing webhook and reconciliation flows. Sandbox /
non-production only; returns 404 in production-live. The asset and
network are resolved server-side from the Deposit Address (limited to
ethereum, base, and solana); the caller supplies only the amount.



## OpenAPI

````yaml /api-reference/openapi.yaml post /deposit-addresses/{depositAddressId}/simulate/inbound-transfer
openapi: 3.0.3
info:
  title: Polygon OMS Public API
  version: v26.05.28-0001
  description: >-
    Unified API for moving money between crypto and fiat. Three ways to move
    money: Transactions (instant, wallet or card funded, including Cash-In for
    in-person cash deposits), Deposit Addresses (reusable crypto deposit
    configurations), and Virtual Accounts (dedicated bank accounts that
    auto-convert fiat to crypto). Standard transactions follow a two-step flow:
    create a Quote (pricing), then create a Transaction (execution). Cash-in
    codes generate a one-time deposit code for in-person cash deposits at retail
    locations.
  contact:
    name: Polygon OMS
    url: https://oms.polygon.technology
servers:
  - url: https://sandbox-api.polygon.technology/v0.10
    description: Sandbox
  - url: https://api.polygon.technology/v0.10
    description: Production
security:
  - BearerAuth: []
tags:
  - name: Auth
    description: Authentication via FrontEgg
  - name: Customers
    description: Customer management and KYC
  - name: Customer
  - name: Wallet
  - name: Quote
  - name: Transaction
  - name: Webhook
  - name: CashIns
  - name: CashLocation
  - name: Sandbox
  - name: VirtualAccount
  - name: Counterparty
  - name: ExternalAccount
  - name: DepositAddress
paths:
  /deposit-addresses/{depositAddressId}/simulate/inbound-transfer:
    post:
      tags:
        - Sandbox
      summary: Simulate inbound transfer on a Deposit Address
      description: |-
        Simulate an inbound stablecoin (blockchain) transfer against a Deposit
        Address, for testing webhook and reconciliation flows. Sandbox /
        non-production only; returns 404 in production-live. The asset and
        network are resolved server-side from the Deposit Address (limited to
        ethereum, base, and solana); the caller supplies only the amount.
      operationId: simulateDepositAddressInboundTransfer
      parameters:
        - name: depositAddressId
          in: path
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/IdempotencyKeyHeader'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SimulateDaInboundTransferRequest'
            examples:
              Inbound USDC on Ethereum to a Deposit Address:
                summary: Inbound USDC on Ethereum to a Deposit Address
                value:
                  amount: '100.00'
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SimulateDaInboundTransferResponse'
              examples:
                Inbound USDC on Ethereum to a Deposit Address:
                  summary: Inbound USDC on Ethereum to a Deposit Address
                  value:
                    depositAddressId: da_n1m2ff68sd8ykvt4xswtq7e015
                    asset: usdc
                    network: ethereum
                    amount: '100.00'
                    status: submitted
                    submittedAt: '2026-07-13T19:00:00Z'
                    transactionHash: >-
                      0x8a3b7c1d2e3f4a5b6c7d8e9f0a1b2c3d4e5f6a7b1c2d3e4f5a6b7c8d9e0f1a2b
components:
  parameters:
    IdempotencyKeyHeader:
      name: Idempotency-Key
      in: header
      required: true
      description: >-
        Required on POST and PUT requests. Use a unique value per logical
        mutation attempt, for example a UUID.
      schema:
        type: string
  schemas:
    SimulateDaInboundTransferRequest:
      type: object
      required:
        - amount
      properties:
        amount:
          allOf:
            - $ref: '#/components/schemas/decimalString'
          description: >-
            Must be greater than 0.00 and at most 1000.00 (422
            `simulationAmountOutOfRange` beyond).
      description: Request body for POST /deposit-addresses/{id}/simulate/inbound-transfer.
    SimulateDaInboundTransferResponse:
      type: object
      required:
        - depositAddressId
        - asset
        - network
        - amount
        - status
        - submittedAt
        - transactionHash
      properties:
        depositAddressId:
          allOf:
            - $ref: '#/components/schemas/typeId'
          description: >-
            The Deposit Address that received the simulated transfer (`da_`
            prefix).
        asset:
          allOf:
            - $ref: '#/components/schemas/SimulateDaInboundAsset'
          description: The stablecoin that was received, resolved from the Deposit Address.
        network:
          allOf:
            - $ref: '#/components/schemas/SimulateDaInboundNetwork'
          description: >-
            The blockchain network the transfer settled on, resolved from the
            Deposit Address.
        amount:
          allOf:
            - $ref: '#/components/schemas/decimalString'
          description: The simulated transfer amount.
        status:
          type: string
          enum:
            - submitted
          description: >-
            Always "submitted"; sandbox blockchain inbounds settle
            synchronously.
        submittedAt:
          type: string
          format: date-time
          description: When the simulated transfer was submitted.
        transactionHash:
          type: string
          description: Synthetic on-chain transaction hash for webhook correlation.
      description: Response for POST /deposit-addresses/{id}/simulate/inbound-transfer.
    decimalString:
      type: string
      description: >-
        Wire-safe decimal string for financial float values (USD amounts,
        percentages).
      x-go-type-import:
        path: github.com/shopspring/decimal
      x-go-type: decimal.Decimal
    typeId:
      type: string
      pattern: >-
        ^[a-z]+_([0-9a-hjkmnp-tv-z]{26}|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})$
      description: >-
        Public TypeID, e.g. `txn_01h455vb4pex5vsknk084sn02q`; legacy UUID
        suffixes are accepted until non-v7 rows are retired.
      x-go-type: string
    SimulateDaInboundAsset:
      type: string
      enum:
        - usdc
        - usdt
        - usat
      description: Stablecoin currency code accepted for inbound blockchain transfers.
    SimulateDaInboundNetwork:
      type: string
      enum:
        - base
        - ethereum
        - solana
      description: >-
        Blockchain network for inbound Deposit Address transfers. Narrowed to
        the

        serviceable subset (base, ethereum, solana); there is no Polygon
        synthesis.

        Lowercase, matching how `DepositAddress.expectedSourceNetwork` is cased
        on

        the wire.
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Token from POST /auth/token

````