> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.solvimon.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.solvimon.com/_mcp/server.

# Invoice details

The Invoice details component renders the line items and breakdown of a specific invoice. Use it when you want to show invoice details in isolation, without the full invoice view.

---

![](/_fern-img/865e9d570b9e28633565a75f5c58dfe6cb6bf6604ce8e3053a304d898a36b5dc.webp)

---

## Overview

Invoice details is driven by a `portalObject` your backend generates for a specific customer, combined with an `invoiceId` you pass in configuration. The SDK fetches and displays the details for that invoice. Your frontend never handles API keys directly.

## Mount the component

**`Invoice details component`**

```js Invoice details component
import { createSolvimonCore } from '@solvimon/solvimon-web/core';

// Generated by your backend via the Solvimon API.
const customerPortalObject = {
    object_type: 'PORTAL_URL',
    id: 'purl_example',
    type: 'CUSTOMER_PORTAL',
    customer_id: 'cust_example',
    token: 'replace-with-a-real-portal-token',
    status: 'PUBLISHED',
};

const solvimon = createSolvimonCore({
    environment: 'TEST',
    locale: 'en-US',
});

const unmount = solvimon.createComponent('invoice-details', {
    container: '#sdk-root',
    portalObject: customerPortalObject,
    configuration: {
        invoiceId: 'inv_example',
    },
});

window.addEventListener('beforeunload', () => {
    unmount?.();
});
```

## Configuration

| Option      | Type     | Required | Description                       |
| ----------- | -------- | -------- | --------------------------------- |
| `invoiceId` | `string` | Yes      | The ID of the invoice to display. |

## Events

This component does not fire any events.