---
title: "Defer Bill"
method: POST
path: "/companies/{company_id}/gl/items/{item_id}/deferral"
tags: ["gl-modules"]
---

# Defer Bill

`POST /companies/{company_id}/gl/items/{item_id}/deferral`

## Request

- Base URL: `https://app.zeno-works.ch` (the document declares no server; this is the origin it was published from)
- URL: `https://app.zeno-works.ch/companies/{company_id}/gl/items/{item_id}/deferral`
- Auth: none declared

Defer (part of) a booked supplier bill — accountant (ZCT-876).

One transaction: a recognition schedule (type deferral, direction expense, balance
account = the configured active accrual account, linked to the bill's document and
item) **and** the reclass entry Dr that account / Cr ``pnl_account_code`` for exactly
``total_amount``, dated on the bill's posting date — so the installments release what
the reclass loaded and the expense is counted once. Installments already due post at
once and are counted in ``posted``; months with no period yet are reported in
``blocked_periods``. ``total_amount`` may be less than the line (defer only the next
year's share) but never more. Reversing the reclass entry later undoes the deferral and
its schedule together; cancelling the schedule on its own is refused.

## Path parameters

- `company_id` string, required
- `item_id` string, required

## Headers

- `authorization` string, nullable

## Cookies

- `access_token` string, nullable

## Request body

- GlBillDeferralCreate: Defer part or all of one expense account of a booked bill (ZCT-876, R3). The schedule's type (deferral), direction (expense) and balance account (the configured active accrual account) are fixed by the server; the reclass moves exactly ``total_amount`` from ``pnl_account_code`` onto that balance account.
  - `pnl_account_code` string, required
  - `total_amount` union, required
    - number
    - string
  - `service_period_start` string, date, required
  - `service_period_end` string, date, required
  - `num_periods` integer, required
  - `description` string, nullable

## Response `201`

Successful Response

- GlBillDeferralOut: The deferral just booked: the schedule, the reclass entry, and the installments the same step posted (or could not post, by month and reason — ZCT-270's shape).
  - `schedule` GlRecognitionScheduleOut, required
    - `id` string, required
    - `company_id` string, required
    - `schedule_type` string, required
    - `direction` string, required
    - `total_amount_base` string, required
    - `currency` string, required
    - `status` string, required
    - `service_period_start` string, date, required
    - `service_period_end` string, date, required
    - `origin` string
    - `confidence` string, nullable
    - `source_ref_type` string, nullable
    - `source_ref_id` string, nullable
    - `source_document_id` string, nullable
    - `description` string, nullable
    - `document_no` string, nullable
  - `reclass_journal_entry_id` string, required
  - `posted` integer, required
  - `blocked` integer, required
  - `blocked_periods` GlRunBlockedPeriod[], required
    - `period` string, required
    - `reason` 'no_period' | 'period_closed' | 'year_closed' | 'account_missing' | 'posting_refused', required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/zeno-works/apis/zeno-api.md) · [All operations](https://skmtc.dev/zeno-works/apis/zeno-api/llms.txt) · [OpenAPI document](https://skmtc.dev/zeno-works/apis/zeno-api/revisions/1eb93dde146c?raw)
