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

# Get Conversion Internal Transaction

> One on-chain transaction Tender recorded to settle one of your conversions

> [!NOTE]
>
> **Auth method: Signed (HMAC)** — this endpoint requires the full set of signed
> headers: `x-access-id`, `x-request-id`, `x-timestamp`, and an HMAC-SHA256
> `authorization` signature. See [Authentication](https://docs.tender.cash/api-reference/authentication.md#signed-hmac-authentication).

Returns one internal transaction of a conversion, for example to check whether its `txHash` has
been broadcast. Get the IDs from [List Conversion Internal Transactions](https://docs.tender.cash/api-reference/endpoint/conversions/list-internal.md).
An ID is only found under the conversion it belongs to.

All conversion endpoints share a bucket of 10 requests per minute per merchant, on top of the general limit. See [Rate limits](https://docs.tender.cash/api-reference/rate-limits.md).

## Headers

**authorization** `string` *required*

Base64-encoded HMAC-SHA256 signature of `{"timeStamp":"<x-timestamp>","requestId":"<x-request-id>","accessId":"<x-access-id>"}`, signed with your access secret. The request body is not part of the signature.

**Example:** `"pV3n0o8kq0lK2mJ8bZ1yq3Yt6hR0cXK9u4mVJ2l9sE0="`

**x-timestamp** `string` *required*

ISO 8601 timestamp; must be within 5 minutes of server time

**Example:** `"2026-10-15T09:45:53.000Z"`

**x-request-id** `string` *required*

A unique UUID v4 per request

**Example:** `"550e8400-e29b-41d4-a716-446655440000"`

**x-access-id** `string` *required*

Your API access ID provided by Tender

**Example:** `"your-access-id-here"`

## Path parameters

**id** `string` *required*

The conversion ID: `conversionId` from [Create Conversion](https://docs.tender.cash/api-reference/endpoint/conversions/create.md)

**Example:** `"6a12f0c4e4b0a1b2c3d4e5f2"`

**internalId** `string` *required*

Internal transaction ID: `id` from [List Conversion Internal Transactions](https://docs.tender.cash/api-reference/endpoint/conversions/list-internal.md)

**Example:** `"6a12f0c4e4b0a1b2c3d4e6a7"`

## Response

**status** `string` *required*

`success` on success

**Example:** `"success"`

**message** `string` *required*

Human-readable result message

**Example:** `"success"`

**data** `object` *required*

The internal transaction

**data properties**

**id** `string`

Internal transaction ID

**Example:** `"6a12f0c4e4b0a1b2c3d4e6a7"`

**parentId** `string`

ID of the payment, conversion or payout in the path

**parentType** `string`

`transaction` (a payment), `conversion` or `payout`

**role** `string`

What this transaction did for its parent. See [Roles](#roles).

**Example:** `"conversion_send"`

**type** `string`

`send` (left your balance) or `receive` (credited to it)

**Example:** `"send"`

**status** `string`

Ledger status, for example `pending` or `completed`

**Example:** `"completed"`

**chain** `string`

Chain the transaction is on

**Example:** `"base"`

**asset** `string | null`

Coin moved

**Example:** `"usdc"`

**amount** `string`

Amount of `asset`

**Example:** `"99.2"`

**usdAmount** `string`

USD value of `amount` when recorded

**Example:** `"99.2"`

**txHash** `string | null`

On-chain transaction hash; `null` until the transaction is broadcast

**explorerUrl** `string | null`

Block explorer link for `txHash`, when the chain has an explorer configured

**createdAt** `string | null`

ISO 8601 timestamp

**Example:** `"2026-10-15T09:21:03.114Z"`

Additional fields may be added later; ignore fields you don't recognise.

## Roles

| `role` | Meaning |
| - | - |
| `bridge_deposit` | Funds sent into a bridge to move a payment to another chain |
| `bridge_settlement` | Funds received on the destination chain when the bridge completes |
| `conversion_send` | The on-chain send that funds a conversion or `internal` fiat payout |
| `conversion_settlement` | The transaction that credits the result of a conversion |

## Errors

| HTTP | Message | Cause |
| - | - | - |
| 404 | `Internal transaction not found` | The conversion isn't yours, the ID is malformed, or `internalId` isn't one of this conversion's internal transactions |

```bash cURL theme={null}
curl "https://sandbox-api.tender.cash/v1/api/conversions/6a12f0c4e4b0a1b2c3d4e5f2/internal/6a12f0c4e4b0a1b2c3d4e6a7" \
  -H "x-access-id: your-access-id-here" \
  -H "x-request-id: 550e8400-e29b-41d4-a716-446655440000" \
  -H "x-timestamp: 2026-10-15T09:45:53.000Z" \
  -H "authorization: <signature>"
```

```json 200 theme={null}
{
  "status": "success",
  "message": "success",
  "data": {
    "id": "6a12f0c4e4b0a1b2c3d4e6a7",
    "parentId": "6a12f0c4e4b0a1b2c3d4e5f2",
    "parentType": "conversion",
    "role": "conversion_send",
    "type": "send",
    "status": "completed",
    "chain": "base",
    "asset": "usdc",
    "amount": "99.2",
    "usdAmount": "99.2",
    "txHash": "0x9f2c4be1a7d03e55c81b6fa2d4e7091bc3a5f86d2e0471b9ac5d3f6e8b1027c4",
    "explorerUrl": "https://basescan.org/tx/0x9f2c4be1a7d03e55c81b6fa2d4e7091bc3a5f86d2e0471b9ac5d3f6e8b1027c4",
    "createdAt": "2026-10-15T09:21:03.114Z"
  }
}
```

```json 404 theme={null}
{
  "status": "error",
  "message": "Internal transaction not found",
  "data": {}
}
```


## OpenAPI

````yaml GET /v1/api/conversions/{id}/internal/{internalId}
openapi: 3.1.0
info:
  title: Tender API
  description: Tender Developer API for cryptocurrency payments and agent management
  version: 2.0.0
  contact:
    name: Tender Support
    url: https://tender.cash
servers:
  - url: https://secureapi.tender.cash
    description: Production Server
  - url: https://sandbox-api.tender.cash
    description: Sandbox Server
security:
  - SignedAuth: []
tags:
  - name: Agents
    description: Manage agents and sub-businesses
  - name: Transactions
    description: Payment and transaction operations
  - name: System
    description: System information and configuration
  - name: Webhooks
    description: Webhook management and logs
  - name: On-ramp
    description: Fiat-to-crypto on-ramp operations
  - name: Payouts
    description: Send crypto from merchant balance to a wallet address or payout account
  - name: Subwallets
    description: Provision and manage crypto wallet infrastructure for your end-users
  - name: Conversions
    description: Swap crypto between coins and chains, or convert to a payout account
paths:
  /v1/api/conversions/{id}/internal/{internalId}:
    get:
      tags:
        - Conversions
      summary: Get Conversion Internal Transaction
      description: One internal transaction of one of your conversions.
      operationId: getConversionInternalTransaction
      parameters:
        - name: authorization
          in: header
          required: true
          description: >-
            Base64-encoded HMAC-SHA256 signature of
            `{"timeStamp":"<x-timestamp>","requestId":"<x-request-id>","accessId":"<x-access-id>"}`,
            signed with your access secret. The request body is not part of the
            signature.
          schema:
            type: string
          example: pV3n0o8kq0lK2mJ8bZ1yq3Yt6hR0cXK9u4mVJ2l9sE0=
        - name: x-timestamp
          in: header
          required: true
          description: ISO 8601 timestamp; must be within 5 minutes of server time
          schema:
            type: string
            format: date-time
          example: '2026-10-15T09:45:53.000Z'
        - name: x-request-id
          in: header
          required: true
          description: A unique UUID v4 per request
          schema:
            type: string
            format: uuid
          example: 550e8400-e29b-41d4-a716-446655440000
        - name: x-access-id
          in: header
          required: true
          schema:
            type: string
          example: your-access-id-here
        - name: id
          in: path
          required: true
          description: Conversion ID
          schema:
            type: string
          example: 6a12f0c4e4b0a1b2c3d4e5f2
        - name: internalId
          in: path
          required: true
          description: Internal transaction ID
          schema:
            type: string
          example: 6a12f0c4e4b0a1b2c3d4e6a7
      responses:
        '200':
          description: The internal transaction
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalTransactionResponse'
              example:
                status: success
                message: success
                data:
                  id: 6a12f0c4e4b0a1b2c3d4e6a7
                  parentId: 6a12f0c4e4b0a1b2c3d4e5f2
                  parentType: conversion
                  role: conversion_send
                  type: send
                  status: completed
                  chain: base
                  asset: usdc
                  amount: '99.2'
                  usdAmount: '99.2'
                  txHash: >-
                    0x9f2c4be1a7d03e55c81b6fa2d4e7091bc3a5f86d2e0471b9ac5d3f6e8b1027c4
                  explorerUrl: >-
                    https://basescan.org/tx/0x9f2c4be1a7d03e55c81b6fa2d4e7091bc3a5f86d2e0471b9ac5d3f6e8b1027c4
                  createdAt: '2026-10-15T09:21:03.114Z'
        '404':
          description: >-
            The conversion is not yours, or the ID is not one of its internal
            transactions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConversionPayoutErrorResponse'
              example:
                status: error
                message: Internal transaction not found
                data: {}
        '429':
          description: Rate limit exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConversionPayoutErrorResponse'
              example:
                status: error
                message: Too many requests. Max 10 per 60s.
                data: {}
      security:
        - SignedAuth: []
components:
  schemas:
    InternalTransactionResponse:
      type: object
      properties:
        status:
          type: string
          example: success
        message:
          type: string
          example: success
        data:
          $ref: '#/components/schemas/InternalTransaction'
    ConversionPayoutErrorResponse:
      type: object
      properties:
        status:
          type: string
          example: error
        message:
          type: string
        data:
          type: object
          nullable: true
    InternalTransaction:
      type: object
      description: >-
        A ledger transaction Tender recorded to settle a payment, conversion or
        payout.
      properties:
        id:
          type: string
          description: Internal transaction ID
          example: 6a12f0c4e4b0a1b2c3d4e6a7
        parentId:
          type: string
          description: ID of the payment, conversion or payout this belongs to
        parentType:
          type: string
          enum:
            - transaction
            - conversion
            - payout
        role:
          type: string
          enum:
            - bridge_deposit
            - bridge_settlement
            - conversion_send
            - conversion_settlement
          description: What this transaction did for its parent
        type:
          type: string
          enum:
            - send
            - receive
          description: Direction relative to your balance
        status:
          type: string
          example: completed
        chain:
          type: string
          example: base
        asset:
          type:
            - string
            - 'null'
          example: usdc
        amount:
          type: string
          description: Amount in `asset`
          example: '99.2'
        usdAmount:
          type: string
          example: '99.2'
        txHash:
          type:
            - string
            - 'null'
          description: On-chain transaction hash, once broadcast
        explorerUrl:
          type:
            - string
            - 'null'
          description: Block explorer link for `txHash`, when the chain has one
        createdAt:
          type:
            - string
            - 'null'
          format: date-time
  securitySchemes:
    SignedAuth:
      type: apiKey
      in: header
      name: authorization
      description: >-
        Signed (HMAC) authentication. Required headers: x-access-id,
        x-request-id (UUID v4), x-timestamp (ISO 8601, must be within 5 minutes
        of server time), and authorization: the Base64 HMAC-SHA256 of the JSON
        string
        {"timeStamp":"<x-timestamp>","requestId":"<x-request-id>","accessId":"<x-access-id>"}
        (keys in that order, no whitespace) using your access secret. The
        request body, method and path are not signed. The API key must be linked
        to an outlet.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.