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

# GET /merchants/{merchantID}/invoices/{invoiceID}

> Retrieve a single invoice by UUID via authenticated or public endpoint. Both return the same invoice schema including state and AML status.

Use this endpoint to retrieve the full details of a specific invoice. Two variants are available: an authenticated endpoint for merchant use, and a public endpoint that requires no authentication — useful for customer-facing invoice pages.

## Authenticated endpoint

**`GET /merchants/{merchantID}/invoices/{invoiceID}`**

Retrieve an invoice within the context of your merchant account.

### Path parameters

<ParamField path="merchantID" type="string" required>
  The UUID of the merchant account that owns the invoice.
</ParamField>

<ParamField path="invoiceID" type="string" required>
  The UUID of the invoice to retrieve.
</ParamField>

***

## Public endpoint

**`GET /public/invoices/{invoiceID}`**

Retrieve an invoice without authentication. This is useful for building customer-facing payment pages where you need to display invoice details without exposing credentials.

### Path parameters

<ParamField path="invoiceID" type="string" required>
  The UUID of the invoice to retrieve.
</ParamField>

***

## Response

Both endpoints return the same invoice schema.

<ResponseField name="id" type="string" required>
  The UUID of the invoice.
</ResponseField>

<ResponseField name="amount" type="string" required>
  The invoice amount as a decimal string.
</ResponseField>

<ResponseField name="type" type="string" required>
  The invoice type: `onetime`, `reusable`, `collect`, or `withdraw`.
</ResponseField>

<ResponseField name="state" type="string" required>
  The current state of the invoice (e.g., `pending`, `paid`, `expired`).
</ResponseField>

<ResponseField name="createdAt" type="string" required>
  ISO 8601 timestamp of when the invoice was created.
</ResponseField>

<ResponseField name="paymentMethodID" type="number" required>
  The ID of the payment method associated with this invoice.
</ResponseField>

<ResponseField name="amlOk" type="boolean">
  Whether the invoice has passed AML (Anti-Money Laundering) checks.
</ResponseField>

<RequestExample>
  ```bash Authenticated theme={null}
  curl --request GET \
    --url https://api.iterapay.com/merchants/b0fcc813-a7ce-4bbc-932f-dbef6f59ca7f/invoices/b0fcc813-a7ce-4bbc-932f-dbef6f59ca7f \
    --header 'Authorization: Bearer <token>'
  ```

  ```bash Public (no auth) theme={null}
  curl --request GET \
    --url https://api.iterapay.com/public/invoices/b0fcc813-a7ce-4bbc-932f-dbef6f59ca7f
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "id": "b0fcc813-a7ce-4bbc-932f-dbef6f59ca7f",
    "amount": "100.00",
    "type": "onetime",
    "state": "pending",
    "createdAt": "2024-01-15T10:30:00Z",
    "paymentMethodID": 1,
    "amlOk": true
  }
  ```
</ResponseExample>
