---
title: "POST /receipts"
method: POST
path: "/receipts"
tags: ["Чеки"]
---

# POST /receipts

`POST /receipts`

Создание чека

## Headers

- `Idempotence-Key` string, required

## Request body

- PostReceiptData
  - `type` 'payment' | 'refund', required
  - `payment_id` string
  - `refund_id` string
  - `customer` ReceiptDataCustomer, required
    - `full_name` string
    - `inn` string
    - `email` string, email
    - `phone` string
  - `items` PostReceiptDataItem[], required — Позиции чека.
    - `description` string, required
    - `amount` MonetaryAmount, required
      - `value` string, required — Сумма в выбранной валюте. Выражается в виде строки и пишется через точку, например 10.00.
      - `currency` 'RUB' | 'EUR' | 'USD' | 'KZT' | 'BYN' | 'UAH' | 'UZS' | 'TRY' | 'INR' | 'MDL' | 'AZN' | 'AMD', required
    - `vat_code` integer, required — Ставка НДС.
    - `quantity` number, double, required — Количество.
    - `measure` 'piece' | 'gram' | 'kilogram' | 'ton' | 'centimeter' | 'decimeter' | 'meter' | 'square_centimeter' | 'square_decimeter' | 'square_meter' | 'milliliter' | 'liter' | 'cubic_meter' | 'kilowatt_hour' | 'gigacalorie' | 'day' | 'hour' | 'minute' | 'second' | 'kilobyte' | 'megabyte' | 'gigabyte' | 'terabyte' | 'another'
    - `mark_quantity` MarkQuantity
      - `numerator` integer, required
      - `denominator` integer, required
    - `payment_subject` 'commodity' | 'excise' | 'job' | 'service' | 'gambling_bet' | 'gambling_prize' | 'lottery' | 'lottery_prize' | 'intellectual_activity' | 'payment' | 'agent_commission' | 'property_right' | 'non_operating_gain' | 'insurance_premium' | 'sales_tax' | 'resort_fee' | 'composite' | 'another' | 'fine' | 'tax' | 'lien' | 'cost' | 'pension_insurance_without_payouts' | 'pension_insurance_with_payouts' | 'health_insurance_without_payouts' | 'health_insurance_with_payouts' | 'health_insurance' | 'casino' | 'agent_withdrawals' | 'non_marked_excise' | 'marked_excise' | 'marked' | 'non_marked'
    - `payment_mode` 'full_prepayment' | 'partial_prepayment' | 'advance' | 'full_payment' | 'partial_payment' | 'credit' | 'credit_payment'
    - `country_of_origin_code` string
    - `customs_declaration_number` string
    - `excise` string
    - `product_code` string
    - `planned_status` integer
    - `mark_code_info` MarkCodeInfo
      - `mark_code_raw` string
      - `unknown` string
      - `ean_8` string
      - `ean_13` string
      - `itf_14` string
      - `gs_10` string
      - `gs_1m` string
      - `short` string
      - `fur` string
      - `egais_20` string
      - `egais_30` string
    - `mark_mode` string
    - `payment_subject_industry_details` IndustryDetails[]
      - `federal_id` string, required
      - `document_date` string, required
      - `document_number` string, required
      - `value` string, required
  - `internet` boolean — Флаг расчета в интернете.
  - `send` boolean, required — Признак отправки чека пользователю.
  - `tax_system_code` integer — Код системы налогообложения.
  - `timezone` string — Часовой пояс.
  - `additional_user_props` ReceiptAdditionalUserProps
    - `name` string, required
    - `value` string, required
  - `receipt_industry_details` IndustryDetails[] — Отраслевой реквизит чека.
    - `federal_id` string, required
    - `document_date` string, required
    - `document_number` string, required
    - `value` string, required
  - `receipt_operational_details` OperationalDetails
    - `operation_id` integer, required
    - `value` string, required
    - `created_at` string, date-time, required
  - `settlements` Settlement[], required — Данные расчетов.
    - `type` string, required — Тип расчета.
    - `amount` MonetaryAmount, required
      - `value` string, required — Сумма в выбранной валюте. Выражается в виде строки и пишется через точку, например 10.00.
      - `currency` 'RUB' | 'EUR' | 'USD' | 'KZT' | 'BYN' | 'UAH' | 'UZS' | 'TRY' | 'INR' | 'MDL' | 'AZN' | 'AMD', required
  - `on_behalf_of` string — Идентификатор магазина.

## Response `200`

The request has succeeded.

- Receipt
  - `id` string, required
  - `type` 'payment' | 'refund', required
  - `payment_id` string
  - `refund_id` string
  - `status` 'pending' | 'succeeded' | 'canceled', required
  - `fiscal_document_number` string — Номер фискального документа.
  - `fiscal_storage_number` string — Номер фискального накопителя.
  - `fiscal_attribute` string — Фискальный признак.
  - `registered_at` string, date-time — Дата и время регистрации чека.
  - `fiscal_provider_id` string — Идентификатор провайдера фискализации.
  - `items` ReceiptItem[], required — Позиции чека.
    - `description` string, required
    - `quantity` number, double, required
    - `amount` MonetaryAmount, required
      - `value` string, required — Сумма в выбранной валюте. Выражается в виде строки и пишется через точку, например 10.00.
      - `currency` 'RUB' | 'EUR' | 'USD' | 'KZT' | 'BYN' | 'UAH' | 'UZS' | 'TRY' | 'INR' | 'MDL' | 'AZN' | 'AMD', required
    - `vat_code` integer, required
    - `payment_subject` 'commodity' | 'excise' | 'job' | 'service' | 'gambling_bet' | 'gambling_prize' | 'lottery' | 'lottery_prize' | 'intellectual_activity' | 'payment' | 'agent_commission' | 'property_right' | 'non_operating_gain' | 'insurance_premium' | 'sales_tax' | 'resort_fee' | 'composite' | 'another' | 'fine' | 'tax' | 'lien' | 'cost' | 'pension_insurance_without_payouts' | 'pension_insurance_with_payouts' | 'health_insurance_without_payouts' | 'health_insurance_with_payouts' | 'health_insurance' | 'casino' | 'agent_withdrawals' | 'non_marked_excise' | 'marked_excise' | 'marked' | 'non_marked'
    - `payment_mode` 'full_prepayment' | 'partial_prepayment' | 'advance' | 'full_payment' | 'partial_payment' | 'credit' | 'credit_payment'
    - `country_of_origin_code` string
    - `customs_declaration_number` string
    - `excise` string
    - `supplier` ReceiptItemSupplierWithInn
      - `name` string
      - `phone` string
    - `agent_type` 'banking_payment_agent' | 'banking_payment_subagent' | 'payment_agent' | 'payment_subagent' | 'attorney' | 'commissioner' | 'agent'
    - `mark_code_info` MarkCodeInfo
      - `mark_code_raw` string
      - `unknown` string
      - `ean_8` string
      - `ean_13` string
      - `itf_14` string
      - `gs_10` string
      - `gs_1m` string
      - `short` string
      - `fur` string
      - `egais_20` string
      - `egais_30` string
    - `measure` 'piece' | 'gram' | 'kilogram' | 'ton' | 'centimeter' | 'decimeter' | 'meter' | 'square_centimeter' | 'square_decimeter' | 'square_meter' | 'milliliter' | 'liter' | 'cubic_meter' | 'kilowatt_hour' | 'gigacalorie' | 'day' | 'hour' | 'minute' | 'second' | 'kilobyte' | 'megabyte' | 'gigabyte' | 'terabyte' | 'another'
    - `payment_subject_industry_details` IndustryDetails[]
      - `federal_id` string, required
      - `document_date` string, required
      - `document_number` string, required
      - `value` string, required
    - `product_code` string
    - `planned_status` integer
    - `mark_mode` string
    - `mark_quantity` MarkQuantity
      - `numerator` integer, required
      - `denominator` integer, required
  - `internet` boolean — Флаг расчета в интернете.
  - `settlements` Settlement[] — Данные расчетов.
    - `type` string, required — Тип расчета.
    - `amount` MonetaryAmount, required
      - `value` string, required — Сумма в выбранной валюте. Выражается в виде строки и пишется через точку, например 10.00.
      - `currency` 'RUB' | 'EUR' | 'USD' | 'KZT' | 'BYN' | 'UAH' | 'UZS' | 'TRY' | 'INR' | 'MDL' | 'AZN' | 'AMD', required
  - `on_behalf_of` string — Идентификатор магазина.
  - `tax_system_code` integer — Код системы налогообложения.
  - `timezone` string — Часовой пояс.
  - `receipt_industry_details` IndustryDetails[] — Отраслевой реквизит чека.
    - `federal_id` string, required
    - `document_date` string, required
    - `document_number` string, required
    - `value` string, required
  - `receipt_operational_details` OperationalDetails
    - `operation_id` integer, required
    - `value` string, required
    - `created_at` string, date-time, required

## Other responses

- `400` — The server could not understand the request due to invalid syntax.
- `401` — Access is unauthorized.
- `403` — Access is forbidden.
- `500` — Server error

## Changes

- **2026-02-14** `fe24d3dfadad` — 73 breaking, 30 warning, 54 info
  - the request's body type/format changed from ``/`` to `object`/``
  - added `#/components/schemas/CurrencyCode` to the `settlements/items/amount/allOf[#/components/schemas/MonetaryAmount]/currency` request property `allOf` list
  - added `#/components/schemas/ReceiptAdditionalUserProps` to the `additional_user_props` request property `allOf` list
  - added `#/components/schemas/ReceiptDataCustomer` to the `customer` request property `allOf` list
  - …153 more

[Change history](https://skmtc.dev/hexlet/apis/api-kassa/changes/receipts/post.md)

---

[API](https://skmtc.dev/hexlet/apis/api-kassa.md) · [All operations](https://skmtc.dev/hexlet/apis/api-kassa/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/hexlet/api-kassa/revisions/f35dc69c1c37/schema)
