---
title: "PendingInvoice – API-Referenz · Quittio"
description: "Fluent render call: Quittio::make($data)->profile()->format()->locale()->render()."
canonical_url: "https://quittio.dev/docs/api/Quittio/Core/Rendering/PendingInvoice"
locale: de
meta:
  "og:description": "Fluent render call: Quittio::make($data)->profile()->format()->locale()->render()."
  "og:image": "https://quittio.dev/og/quittio-de.jpg"
  "og:image:alt": "Quittio: E-Rechnungen für PHP und Laravel. Rechtssicher, validiert, archiviert, mit geprüfter Beispielrechnung."
  "og:image:height": "630"
  "og:image:type": image/jpeg
  "og:image:width": "1200"
  "og:title": "PendingInvoice – API-Referenz · Quittio"
  "twitter:image": "https://quittio.dev/og/quittio-de.jpg"
  "twitter:image:alt": "Quittio: E-Rechnungen für PHP und Laravel. Rechtssicher, validiert, archiviert, mit geprüfter Beispielrechnung."
---

> Index of every page on this site: [llms.txt](https://quittio.dev/llms.txt)

[API reference](https://quittio.dev/docs/api) / [Quittio](https://quittio.dev/docs/api/Quittio) \\ [Core](https://quittio.dev/docs/api/Quittio/Core) \\ [Rendering](https://quittio.dev/docs/api/Quittio/Core/Rendering)

# PendingInvoice

class in quittio/core · uses [`Macroable`](https://quittio.dev/docs/api/Quittio/Core/Support/Macroable)

`Quittio\Core\Rendering\PendingInvoice` · [Source](https://github.com/Quittio/quittio/blob/v0.7.1/packages/core/src/Rendering/PendingInvoice.php#L23)

Fluent render call: Quittio::make($data)->profile()->format()->locale()->render().

## Properties \#

| Property | Type | Description |
| --- | --- | --- |
| `$data` protected readonly | `[InvoiceData](https://quittio.dev/docs/api/Quittio/Core/Data/InvoiceData)` | |
| `$macros` protected static | `array<string, callable>` | |
| `$quittio` protected readonly | `[Quittio](https://quittio.dev/docs/api/Quittio/Core/Quittio)` | |

## Methods \#

| Method | Description |
| --- | --- |
| `->__construct()` | |
| `->__call()` | |
| `->check()` | Validates without rendering a PDF (XML levels run if the format writes or embeds XML). An explicit validation request: validate() and withoutValidation() do not apply, the result is returned and never thrown; see {@see Quittio::prepare()}. |
| `->country()` | Leading country pack of this call (ISO 3166-1 alpha-2), instead of the seller's country. |
| `->data()` | The invoice data of this call, as passed (not calculated). |
| `::flushMacros()` | |
| `->format()` | Output format of this call, e.g. "zugferd", "xrechnung-cii", "pdf"; replaces earlier formats. |
| `->formats()` | Several formats from one calculation, e.g. \['zugferd', 'xrechnung-cii']. |
| `::hasMacro()` | |
| `->locale()` | Locale of this call; wins over the invoice locale and the configuration. |
| `::macro()` | |
| `->option()` | Output option of this call, e.g. option('fold\_marks', false); see the output configuration. |
| `->options()` | The options collected so far, as passed to the render run. |
| `->prepare()` | Calculates and validates without rendering, whatever the validation mode; see {@see PreparedInvoice} and {@see Quittio::prepare()}. |
| `->presentation()` | Presentation defaults (design, texts) for this call; the invoice's own values win. |
| `->profile()` | Profile of the XML for this call, as key, alias or Profile object, e.g. "xrechnung"; the format must support it. Wins over the configured profile. |
| `->render()` | Renders the formats of this call; the result is the first format, the others are reachable with as(). See Quittio::render(). |
| `->template()` | Template of this call (a shipped or a configured template); wins over the invoice presentation and the configuration. |
| `->validate()` | Switches validation on (errors throw) or to warnings only. |
| `->withoutValidation()` | Validation mode "off" for this call: nothing is validated, no ValidationException. |

### `__construct()`#

```
final public function __construct(Quittio $quittio, InvoiceData $data)
```

| Parameter | Type | Description |
| --- | --- | --- |
| `$quittio` | `[Quittio](https://quittio.dev/docs/api/Quittio/Core/Quittio)` | |
| `$data` | `[InvoiceData](https://quittio.dev/docs/api/Quittio/Core/Data/InvoiceData)` | |

### `__call()`#

```
public function __call(string $method, array<mixed> $parameters): mixed
```

| Parameter | Type | Description |
| --- | --- | --- |
| `$method` | `string` | |
| `$parameters` | `array<mixed>` | |

<dl><dt>Returns</dt>
<dd><code>mixed</code></dd>
</dl>

### `check()`#

```
public function check(): ValidationResult
```

Validates without rendering a PDF (XML levels run if the format writes or embeds XML). An explicit validation request: validate() and withoutValidation() do not apply, the result is returned and never thrown; see {@see Quittio::prepare()}.

<dl><dt>Returns</dt>
<dd><code><a href="https://quittio.dev/docs/api/Quittio/Core/Validation/ValidationResult">ValidationResult</a></code></dd>
</dl>

### `country()`#

```
public function country(string $country): static
```

Leading country pack of this call (ISO 3166-1 alpha-2), instead of the seller's country.

| Parameter | Type | Description |
| --- | --- | --- |
| `$country` | `string` | |

<dl><dt>Returns</dt>
<dd><code>static</code></dd>
</dl>

### `data()`#

```
public function data(): InvoiceData
```

The invoice data of this call, as passed (not calculated).

<dl><dt>Returns</dt>
<dd><code><a href="https://quittio.dev/docs/api/Quittio/Core/Data/InvoiceData">InvoiceData</a></code></dd>
</dl>

### `flushMacros()`#

```
public static function flushMacros(): void
```

static

### `format()`#

```
public function format(string $format): static
```

Output format of this call, e.g. "zugferd", "xrechnung-cii", "pdf"; replaces earlier formats.

| Parameter | Type | Description |
| --- | --- | --- |
| `$format` | `string` | |

<dl><dt>Returns</dt>
<dd><code>static</code></dd>
</dl>

### `formats()`#

```
public function formats(list<string> $formats): static
```

Several formats from one calculation, e.g. \['zugferd', 'xrechnung-cii'].

| Parameter | Type | Description |
| --- | --- | --- |
| `$formats` | `list<string>` | |

<dl><dt>Returns</dt>
<dd><code>static</code></dd>
</dl>

### `hasMacro()`#

```
public static function hasMacro(string $name): bool
```

static

| Parameter | Type | Description |
| --- | --- | --- |
| `$name` | `string` | |

<dl><dt>Returns</dt>
<dd><code>bool</code></dd>
</dl>

### `locale()`#

```
public function locale(string $locale): static
```

Locale of this call; wins over the invoice locale and the configuration.

| Parameter | Type | Description |
| --- | --- | --- |
| `$locale` | `string` | |

<dl><dt>Returns</dt>
<dd><code>static</code></dd>
</dl>

### `macro()`#

```
public static function macro(string $name, callable $macro): void
```

static

| Parameter | Type | Description |
| --- | --- | --- |
| `$name` | `string` | |
| `$macro` | `callable` | |

### `option()`#

```
public function option(string $key, mixed $value): static
```

Output option of this call, e.g. option('fold\_marks', false); see the output configuration.

| Parameter | Type | Description |
| --- | --- | --- |
| `$key` | `string` | |
| `$value` | `mixed` | |

<dl><dt>Returns</dt>
<dd><code>static</code></dd>
</dl>

### `options()`#

```
public function options(): RenderOptions
```

The options collected so far, as passed to the render run.

<dl><dt>Returns</dt>
<dd><code><a href="https://quittio.dev/docs/api/Quittio/Core/Rendering/RenderOptions">RenderOptions</a></code></dd>
</dl>

### `prepare()`#

```
public function prepare(): PreparedInvoice
```

Calculates and validates without rendering, whatever the validation mode; see {@see PreparedInvoice} and {@see Quittio::prepare()}.

<dl><dt>Returns</dt>
<dd><code><a href="https://quittio.dev/docs/api/Quittio/Core/Rendering/PreparedInvoice">PreparedInvoice</a></code></dd>
</dl>

### `presentation()`#

```
public function presentation(Presentation $presentation): static
```

Presentation defaults (design, texts) for this call; the invoice's own values win.

| Parameter | Type | Description |
| --- | --- | --- |
| `$presentation` | `[Presentation](https://quittio.dev/docs/api/Quittio/Core/Data/Presentation/Presentation)` | |

<dl><dt>Returns</dt>
<dd><code>static</code></dd>
</dl>

### `profile()`#

```
public function profile(Profile|string $profile): static
```

Profile of the XML for this call, as key, alias or Profile object, e.g. "xrechnung"; the format must support it. Wins over the configured profile.

| Parameter | Type | Description |
| --- | --- | --- |
| `$profile` | `[Profile](https://quittio.dev/docs/api/Quittio/Core/Profiles/Profile)\|string` | |

<dl><dt>Returns</dt>
<dd><code>static</code></dd>
</dl>

### `render()`#

```
public function render(): RenderedInvoice
```

Renders the formats of this call; the result is the first format, the others are reachable with as(). See Quittio::render().

<dl><dt>Returns</dt>
<dd><code><a href="https://quittio.dev/docs/api/Quittio/Core/Rendering/RenderedInvoice">RenderedInvoice</a></code></dd>
<dt>Throws</dt>
<dd><code><a href="https://quittio.dev/docs/api/Quittio/Core/Validation/ValidationException">ValidationException</a></code> – when validation finds errors in the mode "error"</dd>
<dt>Throws</dt>
<dd><code><a href="https://quittio.dev/docs/api/Quittio/Core/Exceptions/ConfigurationException">ConfigurationException</a></code> – for an unknown format, a profile the format does not support or a watermark with e-invoice XML</dd>
<dt>Throws</dt>
<dd><code><a href="https://quittio.dev/docs/api/Quittio/Core/View/MandatoryFieldMissing">MandatoryFieldMissing</a></code> – when the template omits mandatory values in the guard mode "exception"</dd>
<dt>Throws</dt>
<dd><code><a href="https://quittio.dev/docs/api/Quittio/Core/Calculation/CalculationException">CalculationException</a></code> – when the data cannot be calculated</dd>
<dt>Throws</dt>
<dd><code><a href="https://quittio.dev/docs/api/Quittio/Core/Pdf/PdfException">PdfException</a></code> – when the PDF cannot be rendered</dd></dl>

### `template()`#

```
public function template(string $template): static
```

Template of this call (a shipped or a configured template); wins over the invoice presentation and the configuration.

| Parameter | Type | Description |
| --- | --- | --- |
| `$template` | `string` | |

<dl><dt>Returns</dt>
<dd><code>static</code></dd>
</dl>

### `validate()`#

```
public function validate(bool $throwOnError = true): static
```

Switches validation on (errors throw) or to warnings only.

| Parameter | Type | Description |
| --- | --- | --- |
| `$throwOnError` | `bool` = `true` | |

<dl><dt>Returns</dt>
<dd><code>static</code></dd>
</dl>

### `withoutValidation()`#

```
public function withoutValidation(): static
```

Validation mode "off" for this call: nothing is validated, no ValidationException.

<dl><dt>Returns</dt>
<dd><code>static</code></dd>
</dl>

```json
{"@context":"https://schema.org","@graph":[{"@id":"https://quittio.dev/#website","@type":"WebSite","description":"E-Rechnungen für PHP und Laravel: ZUGFeRD, XRechnung und Peppol erstellen, prüfen, lesen und archivieren.","inLanguage":"de-DE","name":"Quittio","url":"https://quittio.dev/","publisher":{"@id":"https://quittio.dev/#identity"},"workTranslation":{"@id":"https://quittio.dev/en#website"}},{"@id":"https://quittio.dev/docs/api/Quittio/Core/Rendering/PendingInvoice#webpage","@type":"WebPage","description":"Fluent render call: Quittio::make($data)->profile()->format()->locale()->render().","name":"PendingInvoice – API-Referenz","url":"https://quittio.dev/docs/api/Quittio/Core/Rendering/PendingInvoice","isPartOf":{"@id":"https://quittio.dev/#website"},"potentialAction":[{"@type":"ReadAction","target":["https://quittio.dev/docs/api/Quittio/Core/Rendering/PendingInvoice"]}],"primaryImageOfPage":{"@id":"https://quittio.dev/#logo"}},{"@id":"https://quittio.dev/#identity","@type":"Organization","description":"Open-Source-Bibliothek für E-Rechnungen in PHP und Laravel (ZUGFeRD, XRechnung, Peppol) und Quittio Managed.","email":"kontakt@niklasforst.de","legalName":"Niklas Forst – Softwareentwicklung","name":"Quittio","url":"https://quittio.dev","founder":{"@type":"Person","name":"Niklas Forst","url":"https://quittio.dev/ueber"},"logo":{"@id":"https://quittio.dev/#logo"},"sameAs":["https://github.com/Quittio/quittio","https://packagist.org/packages/quittio/quittio"]},{"@id":"https://quittio.dev/#logo","@type":"ImageObject","caption":"Quittio","contentUrl":"https://quittio.dev/logo.png","inLanguage":"de-DE","url":"https://quittio.dev/logo.png"}]}
```