> For the complete documentation index, see [llms.txt](https://api-portal.novapost.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://api-portal.novapost.com/metodi-1/metodi/readme/vidpravlennya/povernennya/legke-povernennya-dlya-mizhnarodnikh-vidpravlen-z-ukrayini-do-yevropi.md).

# Легке повернення для міжнародних відправлень з України до Європи

## Створення відправлення для легкого повернення

> Створює відправлення для повернення після доставки початкового замовлення.\
> \
> ℹ️ \*\*Інформація:\*\* \</br>\
> Щоб цей запит працював, менеджер з обслуговування клієнта повинен увімкнути налаштування LightReturn для юридичної особи у внутрішній системі Nova Post.\</br>\
> Після активації цього налаштування запит працюватиме через API для нових доставлених відправлень.\
> Повернення може бути створене лише якщо батьківське відправлення має статус \*\*Delivered\*\* та містить послугу \*\*AllowedLightReturn\*\*.\</br>\
> Поточний статус відправлення можна знайти у полі \`"items" → "statusCode"\` методу \[Список відправлень]\(<https://api-portal.novapost.com/metodi-1/metodi/readme/vidpravlennya#get-shipments).\\></br>\
> \*\*AllowedLightReturn\*\* визначає кількість днів, протягом яких отримувач може ініціювати повернення після доставки.\
> Внутрішньо система перевіряє кілька умов перед тим, як дозволити створення відправлення легкого повернення:\
> \- Статус батьківського відправлення має бути одним із: \`Issued (9, 10, 11, 106)\`.\
> \- Система обчислює дозволений період повернення за такою логікою: \</br>\
> &#x20; \`finalDate = toTZ(parentShipment.RecipientDateTime) + returnDays + 1 day\`\</br>\
> &#x20; де returnDays береться з послуги AllowedLightReturn, а toTZ застосовує відповідний часовий пояс системи (наприклад, регіон ЄС).\
> \- Повернення може бути створене лише якщо поточний час (nowTZ) є меншим за finalDate.\
> \- Система також перевіряє, що для цього ж батьківського відправлення ще не було створено легке повернення.\
> \
> Якщо всі ці умови виконані, запит на створення повернення приймається; в іншому випадку система повертає помилку валідації з поясненням причини відмови.\
> \
> \*\*Як працює відправлення легкого повернення (Україна → Європа)\*\*\
> \
> \- Запит повинен містити один обов’язковий параметр — \`number\` (номер батьківського відправлення). Усі інші параметри є опціональними.\
> \- Підтримуються два сценарії повернення:\
> &#x20; \- \*\*Повне повернення\*\* — необхідно передати лише параметр \`number\`. Усі дані відправлення успадковуються з батьківського відправлення.\
> &#x20; \- \*\*Часткове повернення\*\* — можна передати додаткові дані відправлення (наприклад, \`invoice\` та \`parcels\`), щоб повернути лише вибрані товари або оновити габарити посилок.\
> \- Якщо опціональні параметри не вказані, їх значення автоматично наслідуються з батьківського відправлення, коли це можливо.\
> \- Як місця передачі відправлення для повернення дозволено використовувати лише відділення Nova Post.\
> \- Якщо батьківське відправлення було доставлене до APM (поштомата), PUDO або за адресою, найближче доступне відділення Nova Post обирається автоматично.\
> \- Клієнт може безпосередньо вказати валідний \`divisionId\` у запиті.\
> \- Кур’єрський забір, APM (поштомати) та PUDO не можуть використовуватися як місця передачі відправлення для повернення.\
> \
> \*\*Часткове повернення\*\*\
> \
> Для часткового повернення:\
> \- Усі значення в \`invoice.items\[]\` повинні повністю відповідати відповідним товарам із батьківського відправлення.\
> \- Створення нових товарних позицій інвойсу або зміна значень існуючих позицій не допускається.\
> \- Клієнт, який ініціює повернення, несе відповідальність за узгодженість значень \`amount\`, \`cost\` та \`actualWeight\`.\
> \- Щоб уникнути помилок валідації, рекомендується копіювати дані інвойсу безпосередньо з батьківського відправлення.\
> \
> Після створення повернення система автоматично генерує накладну повернення.\</br>\
> Детальніше про друк етикетки повернення дивіться у \[Друк транспортних документів]\(<https://api-portal.novapost.com/metodi-1/metodi/readme/vidpravlennya/druk-dokumentiv).\\></br>\
> Детальніше про створення батьківського відправлення дивіться у \[Створення Відправлення]\(<https://api-portal.novapost.com/metodi-1/metodi/readme/vidpravlennya/stvorennya-vidpravlen).\\>
> \
> 🔹\*\*Опис елементів керування:\*\*\
> \
> \*\*SCHEMA\*\*\</br>\
> Відображає повну технічну структуру запиту або відповіді, включаючи назви полів, типи даних, обов’язкові поля, допустимі значення та правила валідації.\
> \- \*\*Single line description\*\*\</br>\
> &#x20; Опис, який вміщується в один рядок; текст, що не вміщується, залишається прихованим.\
> \- \*\*Multiline description\*\*\</br>\
> &#x20; Розширений опис, який відображає більше одного рядка тексту.\
> \
> \*\*EXAMPLE\*\*\</br>\
> Показує готовий приклад JSON з коректно заповненими значеннями, щоб продемонструвати, як має виглядати валідний запит або відповідь.<br>

```json
{"openapi":"3.0.0","info":{"title":"API Nova Post","version":"1.0.0"},"tags":[{"name":"Shipments"}],"servers":[{"description":"sandbox","url":"https://api-stage.novapost.com/v.1.0/"},{"description":"production","url":"https://api.novapost.com/v.1.0/"}],"security":[{"JWT":[]}],"components":{"securitySchemes":{"JWT":{"type":"apiKey","in":"header","name":"Authorization","description":"JWT-токен авторизації зі строком дії 1 годину у заголовку"}}},"paths":{"/shipments/light-return":{"post":{"tags":["Shipments"],"summary":"Створення відправлення для легкого повернення","description":"Створює відправлення для повернення після доставки початкового замовлення.\n\nℹ️ **Інформація:** </br>\nЩоб цей запит працював, менеджер з обслуговування клієнта повинен увімкнути налаштування LightReturn для юридичної особи у внутрішній системі Nova Post.</br>\nПісля активації цього налаштування запит працюватиме через API для нових доставлених відправлень.\nПовернення може бути створене лише якщо батьківське відправлення має статус **Delivered** та містить послугу **AllowedLightReturn**.</br>\nПоточний статус відправлення можна знайти у полі `\"items\" → \"statusCode\"` методу [Список відправлень](https://api-portal.novapost.com/metodi-1/metodi/readme/vidpravlennya#get-shipments).</br>\n**AllowedLightReturn** визначає кількість днів, протягом яких отримувач може ініціювати повернення після доставки.\nВнутрішньо система перевіряє кілька умов перед тим, як дозволити створення відправлення легкого повернення:\n- Статус батьківського відправлення має бути одним із: `Issued (9, 10, 11, 106)`.\n- Система обчислює дозволений період повернення за такою логікою: </br>\n  `finalDate = toTZ(parentShipment.RecipientDateTime) + returnDays + 1 day`</br>\n  де returnDays береться з послуги AllowedLightReturn, а toTZ застосовує відповідний часовий пояс системи (наприклад, регіон ЄС).\n- Повернення може бути створене лише якщо поточний час (nowTZ) є меншим за finalDate.\n- Система також перевіряє, що для цього ж батьківського відправлення ще не було створено легке повернення.\n\nЯкщо всі ці умови виконані, запит на створення повернення приймається; в іншому випадку система повертає помилку валідації з поясненням причини відмови.\n\n**Як працює відправлення легкого повернення (Україна → Європа)**\n\n- Запит повинен містити один обов’язковий параметр — `number` (номер батьківського відправлення). Усі інші параметри є опціональними.\n- Підтримуються два сценарії повернення:\n  - **Повне повернення** — необхідно передати лише параметр `number`. Усі дані відправлення успадковуються з батьківського відправлення.\n  - **Часткове повернення** — можна передати додаткові дані відправлення (наприклад, `invoice` та `parcels`), щоб повернути лише вибрані товари або оновити габарити посилок.\n- Якщо опціональні параметри не вказані, їх значення автоматично наслідуються з батьківського відправлення, коли це можливо.\n- Як місця передачі відправлення для повернення дозволено використовувати лише відділення Nova Post.\n- Якщо батьківське відправлення було доставлене до APM (поштомата), PUDO або за адресою, найближче доступне відділення Nova Post обирається автоматично.\n- Клієнт може безпосередньо вказати валідний `divisionId` у запиті.\n- Кур’єрський забір, APM (поштомати) та PUDO не можуть використовуватися як місця передачі відправлення для повернення.\n\n**Часткове повернення**\n\nДля часткового повернення:\n- Усі значення в `invoice.items[]` повинні повністю відповідати відповідним товарам із батьківського відправлення.\n- Створення нових товарних позицій інвойсу або зміна значень існуючих позицій не допускається.\n- Клієнт, який ініціює повернення, несе відповідальність за узгодженість значень `amount`, `cost` та `actualWeight`.\n- Щоб уникнути помилок валідації, рекомендується копіювати дані інвойсу безпосередньо з батьківського відправлення.\n\nПісля створення повернення система автоматично генерує накладну повернення.</br>\nДетальніше про друк етикетки повернення дивіться у [Друк транспортних документів](https://api-portal.novapost.com/metodi-1/metodi/readme/vidpravlennya/druk-dokumentiv).</br>\nДетальніше про створення батьківського відправлення дивіться у [Створення Відправлення](https://api-portal.novapost.com/metodi-1/metodi/readme/vidpravlennya/stvorennya-vidpravlen).\n\n🔹**Опис елементів керування:**\n\n**SCHEMA**</br>\nВідображає повну технічну структуру запиту або відповіді, включаючи назви полів, типи даних, обов’язкові поля, допустимі значення та правила валідації.\n- **Single line description**</br>\n  Опис, який вміщується в один рядок; текст, що не вміщується, залишається прихованим.\n- **Multiline description**</br>\n  Розширений опис, який відображає більше одного рядка тексту.\n\n**EXAMPLE**</br>\nПоказує готовий приклад JSON з коректно заповненими значеннями, щоб продемонструвати, як має виглядати валідний запит або відповідь.\n","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["number"],"properties":{"number":{"type":"string","description":"Номер **батьківського відправлення**, для якого ініціюється повернення.\n\nЦей параметр є обов’язковим для створення повернення.\n"},"divisionId":{"type":"string","description":"Ідентифікатор відділення, яке буде обробляти повернення.\n\n🔹Поле підтримується тимчасово для забезпечення зворотної сумісності (legacy).\n\n🔹Це поле є опціональним.\n"},"sender":{"type":"object","description":"Дані відправника для відправлення повернення.","properties":{"divisionId":{"type":"string","description":"Ідентифікатор відділення Nova Post в Україні, з якого буде передано відправлення для повернення."},"senderPhone":{"type":"string","description":"Номер телефону відправника для відправлення повернення.\n"},"addressParts":{"type":"object","description":"Структура, що описує адресу для кур’єрського забору відправлення.\n\n🔹Використовується, якщо `divisionId` не передано.\n","properties":{"countryCode":{"type":"string","description":"Код країни відповідно до стандарту ISO 3166-1 alpha-2."},"postCode":{"type":"string","description":"Поштовий індекс адреси забору."},"city":{"type":"string","description":"Назва міста адреси забору."},"region":{"type":"string","description":"Регіон або адміністративна одиниця адреси."},"street":{"type":"string","description":"Назва вулиці адреси забору."},"building":{"type":"string","description":"Номер будівлі адреси забору."},"flat":{"type":"string","description":"Номер квартири або офісу за вказаною адресою."},"block":{"type":"string","description":"Блок або секція адреси, якщо застосовується."},"note":{"type":"string","description":"Додаткова інформація або коментар до адреси (наприклад, під’їзд, поверх або коментар для кур’єра)."}}}}},"recipient":{"type":"object","description":"Дані отримувача для відправлення повернення.","properties":{"divisionId":{"type":"string","description":"Ідентифікатор відділення Nova Post у Європі, до якого буде доставлено відправлення для повернення.\n\n🔹Має вищий пріоритет, ніж `addressParts`.\n"},"addressParts":{"type":"object","description":"Структура, що описує адресу для кур’єрської доставки.\n\n🔹Використовується, якщо `divisionId` не передано.\n","properties":{"countryCode":{"type":"string","description":"Код країни відповідно до стандарту ISO 3166-1 alpha-2."},"postCode":{"type":"string","description":"Поштовий індекс адреси доставки."},"city":{"type":"string","description":"Назва міста адреси доставки."},"street":{"type":"string","description":"Назва вулиці адреси доставки."},"building":{"type":"string","description":"Номер будівлі адреси доставки."},"flat":{"type":"string","description":"Номер квартири або офісу за вказаною адресою."}}}}},"invoice":{"type":"object","description":"Цей об’єкт містить необхідні дані для митних органів для ефективної обробки відправлення, включаючи оцінку митних зборів і податків, а також підтвердження дотримання правил імпорту/експорту. Структурований формат інвойсу забезпечує легкий доступ до всієї необхідної інформації та її зрозумілість, що сприяє більш швидкому проходженню через кордон.\n\n🔹Для часткового повернення всі значення в invoice.items[] повинні відповідати відповідним товарним позиціям батьківського відправлення. Створення нових товарних позицій або зміна значень існуючих товарних позицій не допускається.\n","properties":{"incoterm":{"type":"string","description":"Визначає умови торгівлі відповідно до правил Incoterms® (наприклад, DAP). Обов’язковий для міжнародних відправлень.","enum":["DAP"]},"currencyCode":{"type":"string","description":"Код валюти інвойсу згідно ISO 4217. Усі позиції інвойсу повинні використовувати одну валюту.","pattern":"^[A-Z]{3}$"},"exportReason":{"type":"string","description":"Причина експорту (ForPersonalPurposes, Selling, Repair, Return, Other).","enum":["ForPersonalPurposes","Selling","Repair","Return","Other"]},"totalCost":{"type":"number","description":"Загальна задекларована вартість інвойсу у вихідній валюті, яка повинна дорівнювати сумі всіх товарних позицій, розрахованих як **(amount × cost)** для кожної позиції.","minimum":1,"maximum":9999999.99},"items":{"type":"array","description":"Детальний перелік товарів у відправленні, необхідний для митного оформлення.\n\n🔹Для часткового повернення всі значення товарних позицій повинні відповідати відповідним товарним позиціям батьківського відправлення.\n","items":{"type":"object","properties":{"name":{"type":"string","description":"Назва товару локальною мовою."},"nameEng":{"type":"string","description":"Назва товару англійською мовою."},"measurementCode":{"type":"string","description":"Одиниця виміру (наприклад, pcs, kg, m)."},"hsCode":{"type":"string","description":"Код Гармонізованої системи для кожного товару (8–10 цифр)."},"amount":{"type":"number","description":"Кількість товару, що відправляється, необхідна для обліку та митного оформлення.\n\nДля часткового повернення значення має залишатися узгодженим із `cost` та `actualWeight`.\n"},"cost":{"type":"number","description":"Вартість однієї одиниці товару у валюті відправника, важлива для страхування та митної оцінки.\n\nДля часткового повернення значення має залишатися узгодженим із `amount` та `actualWeight`.\n"},"costUsd":{"type":"number","description":"Вартість товару, конвертована в долари США, що забезпечує єдину оцінку вартості для міжнародних перевезень.\n\n**🔹Це поле є обов’язковим для відправлень, що перетинають кордон ЄС або прямують за межі ЄС.**\n","minimum":0,"maximum":9999999.99},"costEur":{"type":"number","description":"Вартість товару в євро, що забезпечує стандартизовану оцінку вартості для європейських торговельних операцій.\n\n**🔹Це поле є обов’язковим для відправлень, що перетинають кордон ЄС або прямують за межі ЄС.**\n"},"producerAndModel":{"type":"string","description":"Параметр містить виробника та модель пристрою в одному полі. Обов’язковий для таких категорій:\n- Електроніка\n- Ноутбуки\n- Телефони\n- Побутова техніка\n- Інші подібні товари\n\n**🔸Поле не є обов’язковим, але відправлення з ним мають пріоритет під час митного оформлення.**\n"}}}}}},"parcels":{"type":"array","description":"Parcels` — блок опису посилок.\nКожен об’єкт містить інформацію про одну посилку у відправленні.\n","items":{"type":"object","properties":{"cargoCategory":{"type":"string","enum":["parcel","documents","pallet"],"description":"Тип відправлення (посилка або документи)."},"number":{"type":"string","description":"Номер **батьківського відправлення**, для якого ініціюється повернення.\n\nЦей параметр є обов’язковим для створення повернення.\n"},"parcelDescription":{"type":"string","description":"Короткий опис вмісту посилки."},"insuranceCost":{"type":"number","format":"float","description":"Оголошена страхова вартість посилки."},"untied":{"type":"boolean","description":"Ознака нерозв'язного місця (чи є парсель «незв'язаним»). \n\nЗначення `false` — парсель стандартний, `true` — парсель «розв'язаний» (нефіксований вантаж).\n"},"width":{"type":"integer","description":"Ширина посилки в міліметрах."},"length":{"type":"integer","description":"Довжина посилки в міліметрах."},"height":{"type":"integer","description":"Висота посилки в міліметрах."},"actualWeight":{"type":"integer","description":"Фактична загальна вага всіх одиниць товару в грамах (g)."},"volumetricWeight":{"type":"integer","description":"Об'ємна вага в грамах (g). \n\nПри поверненні береться з первинного інвойсу.\n"}}}}}}}}},"responses":{"200":{"description":"Successfully created Light Return shipment.","content":{"application/json":{"schema":{"type":"object"}}}},"401":{"description":"Unauthorized request — invalid or missing authentication token.","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"object","properties":{"errorMessage":{"type":"string"}}}}}}}},"403":{"description":"Parent shipment is missing the AllowedLightReturn parameter.","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"object","properties":{"errorMessage":{"type":"string"}}}}}}}},"404":{"description":"Parent shipment not found or status not allowed.","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"object","properties":{"errorMessage":{"type":"string"}}}}}}}},"422":{"description":"Parent shipment not found or status not allowed.","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"object","properties":{"errorMessage":{"type":"string"}}}}}}}},"503":{"description":"Service unavailable or request timeout.","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"object","properties":{"errorMessage":{"type":"string"}}}}}}}}}}}}}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://api-portal.novapost.com/metodi-1/metodi/readme/vidpravlennya/povernennya/legke-povernennya-dlya-mizhnarodnikh-vidpravlen-z-ukrayini-do-yevropi.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
